Ответы пользователя по тегу Yii
  • Как в yii2 получить полное имя в gridview?

    @aradon
    PHP-Developer
    Если я правильно вас понял то как-то так:

    Допустим у вас есть модели Books и Authors. И вы хотите в GridView отобразить список книг с именем автора.

    <?= GridView::widget([
                    'dataProvider' => $dataProvider,
                    'columns' => [
                        ['class' => 'yii\grid\SerialColumn'],
                        'title',
                        'author' => [
                            'class' => \yii\grid\DataColumn::className(),
                            'format' => 'html',
                            'value' => function ($model, $index, $widget) {
                                return $model->author->name ;
                            },
                        ],
                       // и т.п. ...


    А чтобы обращаться $model->author->... вы должны настроить связь между моделями. В нашем примере в модели Books надо добавить что-то типа такого:
    public function getAuthor() {
            return $this->hasOne(Authors::className(), ['id' => 'author_id']);
        }
    Ответ написан
    Комментировать