я пытаюсь присоединиться к 3 таблицы в моей моделиYii - Объединение нескольких таблиц
trx_evaluation_details
trx_evaluation
rm_projects
trx_evaluation_details
и trx_evaluation
уже соединены с помощью функции соотношение в моей модели.
'eval' => array(self::BELONGS_TO, 'Evaluation', 'eval_id'),
я пытаюсь присоединиться к rm_projects
таблицу, так что я могу получить доступ к project_name
столбец в этой таблице, поэтому я добавил это.
'project' => array(self::BELONGS_TO, 'RmProjects', 'project_id'),
так что я это соотношение в моей модели ..
public function relations() {
return array(
'eval' => array(self::BELONGS_TO, 'Evaluation', 'eval_id'),
'project' => array(self::BELONGS_TO, 'RmProjects', 'project_id'),
);
}
я попытался получить доступ к нему, как это ..
if ($search_date_end !== '' && $search_date_start !== '' && $search !== '') {
$criteria->condition = "start_date >= '$search_date_start'
AND end_date <= '$search_date_end'
AND project.project_name like '%$search%'
AND t.employee_id = '$employee->company_id'";
}
где я пытался project.project_name .. но возвращается
CDbCommand не смог выполнить Оператор SQL: SQLSTATE [42S22]: Столбец не найден: 1054 Неизвестный столбец 'project.project_name' in 'где clause'. Оператор SQL выполняется было: SELECT COUNT (. DISTINCT
t
id
) ОТtrx_evaluation_details
t
LEFT OUTER JOINtrx_evaluation
eval
о том, где (start_date> = '2015-11-01' AND end_date < (t
eval_id
=eval
id
.). = '2015-12-01' и project.project_name, как '% sprobe%' и t.employee_id = '120069')
что означает, что он не может видеть project.project_name
и таблица rm_projects не стыкуется в возвращенная ошибка.
Как я могу получить доступ к имени_проекта и как я могу присоединиться к таблице rm_projects
? прошу помочь.
Я ответил вам в предыдущем вопросе http: // stackoverflow.com/questions/33949387/yii-how-to-get-data-from-another-model/33950665 # 33950665 – SiZE