Получение заголовка статьи для комментариев Crud
Я создал модели статей и комментариев, и у меня есть CRUD. Работает отлично. Теперь мне нужно, чтобы поле article.title отображалось в Comment Crud вместо comment.articleid. Как я могу это сделать?
Вот где я застрял. Я не знаю, что делать дальше или это правильно:
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'article'=>array(self::BELONGS_TO, 'Article', 'articleid')
);
}
РЕДАКТИРОВАТЬ:
Вот мой код admin.php просмотреть файл:
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'comment-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'commentid',
'articleid',
'content',
'author',
'email',
array(
'class'=>'CButtonColumn',
),
),
)); ?>
Благодарю.
3 ответа
Решение
Это будет что-то вроде этого для массива столбцов:
'columns'=>array(
'commentid',
array(
'name'=>'title',
'value'=>'$data->article->title',
'type'=>'text'
),
'content',
'author',
'email',
array(
'class'=>'CButtonColumn',
),
),
Вам нужно создать это отношение в модели комментариев, и оно будет извлекать все совпадающие записи, присоединяясь к статье на основе articleid
Затем вы можете изменить ваши представления, заменив значения, которые вы хотите отобразить.
Вы должны использовать комментарий-> статья-> заголовок вместо комментария->articleid