我想在我的模型中使用搜索功能在視圖中過濾表格。 我有兩個模型,我需要從模型Evaluation
獲取數據到另一個模型EvaluationDetails
。Yii使用Relation從其他模型中獲取數據
我有這個在我的EvaluationDetails
模型
public function relations() {
return array(
'eval' => array(self::BELONGS_TO, 'Evaluation', 'eval_id'),
);
}
我也有這個在我的搜索功能
public function search($employee = '', $search_date_start = '', $search_date_end = '', $search = '') {
$criteria = new CDbCriteria;
$criteria->with = array('eval' => array('together' => true));
$criteria->compare('employee_id', $this->employee_id);
$criteria->compare('remarks', $this->remarks, true);
$criteria->compare('eval_id', $this->eval_id);
$criteria->compare('eval.evaluatee', $this->evaluatee_search);
$criteria->addSearchCondition('eval.evaluatee', $search);
if ($employee != '')
$criteria->compare('employee_id', $employee->company_id);
return new CActiveDataProvider($this, array(
'criteria' => $criteria,
));
}
我試圖篩選表的用戶,其中,將一個名稱搜索,傳遞$search
中的值,然後在我的EvaluationDetails
模型 的搜索功能中使用此值,我收到錯誤消息。
CDbCommand未能執行SQL語句:SQLSTATE [23000]: 完整性約束違規:1052列在 條款不明確 '的Employee_ID'。執行的SQL語句是:SELECT COUNT (DISTINCT
t
id
。)FROMtrx_evaluation_details
t
LEFT OUTER JOINtrx_evaluation
eval
ON(t
eval_id
=eval
id
。)其中 ((eval.evaluatee LIKE:ycp0)AND(EMPLOYEE_ID =: ycp1))
什麼似乎是我的代碼的問題。請幫助..
哇。我的意思是感謝你的迴應。它確實節省了我的一天。自昨天起我一直在尋找答案.. –