GridViewマルチテーブル関連付け

1426 ワード

複数のテーブル関連クエリーが必要な場合があります.SqlDataProviderを使用すると柔軟です.
コントローラ内
use yii\data\SqlDataProvider;
$dataProvider = new SqlDataProvider([ 
    'sql' =>$sql, 
    'totalCount' => $totalCount, 
    'pagination' => [ 
        'pageSize' => 10, 
    ], 
]); 
$gridcolumn[0]=['class'=>'kartik\grid\SerialColumn'];
$gridcolumn[1]=['label'=>'AA','value'=>"name"];
//  

ビュー中
<?= GridView::widget([ 
       'dataProvider' => $dataProvider, 
       'columns' =>$gridcolumn,
     ]);
?>