Дело происходит на странице /page/admin, которая сгенерирована крудом и дополнена мною.
Есть модель Page (id,body,user_id,change_user_id)
User b[/b]
Связь у них такая (Page->User) Page.php:
public function relations(){
return array(
'author' => array(self::BELONGS_TO, 'User', 'user_id'),
'changeAuthor'=> array(self::BELONGS_TO, 'User', 'change_user_id'),
);
В функции search модели Page прописано так
$criteria=new CDbCriteria;
$criteria->with = array('author', 'changeAuthor');
$criteria->compare('id',$this->id,true);
$criteria->compare('body',$this->body,true);
return new CActiveDataProvider($this, array(
'criteria' =>$criteria,
));
Но поиск по этим двум полям (user_id, change_user_id) не происходит, по остальным нормально ищет. Данные формы через get - отправляются.
Что не так?
В PageController все по моему правильно:
public function loadModel($id)
{
if (isset($_GET['id']))
$model = Page::model()->with('author', 'changeAuthor')->findbyPk($_GET['id']);
if ( $model === null )
{
throw new CHttpException(404, 'The requested page does not exist.');
}
return $model;
}
}