Добрый день, есть 3 таблицы:
t_service (CODE, NAME)
mc_faq (NAME, DESCRIPTION, EXIST)
l_service_22_faq (CODE, CODE_1, CODE_2) - связочная
stackoverflow.com/questions/8044552/searching-in-y...
Пользовался этим рецептом для нахождения всех faq для данной услуги, есть такой момент:
На этапе удаления для
mc_faq я делаю
EXIST = '2' - это полное удаление (0 - упразднение)
Хочу дописать
condition для
$criteria
, чтобы в гриде вытаскивались
FAQ только те, у которых
EXIST != 2
Пробовал так;
$criteria = new CDbCriteria();
$criteria->with = array(
'faq_service' => array(
'condition' => 'CODE_1 = '.$model->CODE,
'group' => 'CODE_2',
'together'=>true
),
);
$criteria->condition = 'mc_faq.EXIST = 1';
Но вылезла ошибка:
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'mc_faq.EXIST' in 'where clause'. The SQL statement executed was: SELECT COUNT(DISTINCT `t`.`CODE`) FROM `mc_faq` `t` LEFT OUTER JOIN `l_service_22_faq` `faq_service` ON (`faq_service`.`CODE_2`=`t`.`CODE`) WHERE (mc_faq.EXIST = 1) AND (CODE_1 = 25)
Связи в модели
Service:
'faq'=>array(self::MANY_MANY, 'Faq', 'l_service_22_faq(CODE_1, CODE_2)'),
'service_faq'=>array(self::HAS_MANY, 'LService22Faq', 'CODE_1'),
Связи в модели
LService22Faq:
'service' => array( self::BELONGS_TO, 'Service', 'CODE_1' ),
'faq' => array( self::BELONGS_TO, 'Faq', 'CODE_2' ),
Помогите советом люди добрые!