0

記事とコメントのモデルを作成し、両方に CRUD を設定しました。その作品は完全に。ここで必要なのは、comment.articleid の代わりに article.title フィールドを Comment Crud に表示することです。どうやってやるの?

これは私が立ち往生しているところです。次に何をすべきか、またはそれが正しいかどうかはわかりません。

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',
        ),
    ),
)); ?>

ありがとう。

4

3 に答える 3

1

列配列の場合は次のようになります。

'columns'=>array(
        'commentid',
        array(
            'name'=>'title',
            'value'=>'$data->article->title',
            'type'=>'text'
        ),
        'content',
        'author',
        'email',
        array(
            'class'=>'CButtonColumn',
        ),
    ),
于 2011-06-23T15:46:38.480 に答える
0

comment->articleid の代わりに comment->article->title を使用する必要があります

于 2011-06-23T13:30:17.657 に答える
0

Comment モデルでこのリレーションを作成する必要があり、 articleid に基づいて article を結合することにより、一致したすべてのレコードを取得します

次に、表示する値を置き換えることで、ビューを変更できます。

于 2011-06-23T11:54:36.563 に答える