Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So zeigen Sie relationale Daten in yii2 an

Sie können einer Rasteransicht auch Spalten mit Werten aus einer anonymen Funktion hinzufügen, wie hier beschrieben http://www.yiiframework.com/doc-2.0/yii-grid-datacolumn.html# $Wert-Detail. Zum Beispiel können Sie den Namen eines Autors wie folgt in einer Gridview anzeigen:

<?= GridView::widget([
'dataProvider'=>$dataProvider,
'filterModel'=>$searchModel,
'columns'=>[
    [
        'attribute'=>'author.name',
        'value'=>function ($model, $key, $index, $column) {
            return $model->author->name;
        },
    ],
    //...other columns
]);
?>

Sie können auch einen HTML-Link zur Detailansicht eines Autors wie folgt zurückgeben:

//...
'columns'=>[
    [
        'attribute'=>'author',
        'value'=>function ($model, $key, $index, $column) {
            return Html::a($model->author->name, ['/author/view', 'id'=>$model->author->id]);
        },
    ],
    //...
],
//...