Есть 3 таблицы:
CREATE TABLE IF NOT EXISTS `department` ( `department_id` int(32) NOT NULL AUTO_INCREMENT, `department_name` varchar(255) NOT NULL, PRIMARY KEY (`department_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ; CREATE TABLE IF NOT EXISTS `user` ( `user_name` varchar(15) NOT NULL, `user_password` varchar(300) NOT NULL, `user_date_create` date NOT NULL, `user_date_last_visit` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `user_id` int(10) NOT NULL AUTO_INCREMENT, `user_role` int(1) NOT NULL, `department_id` int(32) NOT NULL, PRIMARY KEY (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=18 ; CREATE TABLE IF NOT EXISTS `in_out_work` ( `user_id` int(32) NOT NULL, `user_in_work` datetime DEFAULT NULL, `user_out_work` datetime DEFAULT NULL, `in_out_work_id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`in_out_work_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=61 ;
и relations:
в модели user:
'group' => array(self::BELONGS_TO, 'Group', 'group_id'),
в модели InOutWork:
'user' => array(self::BELONGS_TO, 'User', 'user_id'),
В контроллере InOutWorkController рендерим CGridView и выводим department_name:
' department' => array( 'name' => 'in_out_work_id', 'name' => 'user_id', 'header' => 'Отдел', 'type' => 'html', 'value' => '$data->user->department->department_name', )
Что написать сделать, чтоб выводился выпадающий список? Точнее он выводится, но нет поиска при выборе значения:
'filter' => CHtml::listData(Department::model()->findAll(), 'department_id', 'department_name'),
Если необходимо править relations моделей или search, напишите поподробней.
Заранее спасибо!