0
次のように私は、同じページ上の2つのGridViewのウィジェット、独自のDataProviderとそれぞれを持っています。Yii2 Gridview:私は現在どのdataProviderを使用していますか?
<?= GridView::widget([
'dataProvider' => $userModel,
'columns' => $columns,
]); ?>
<?= GridView::widget([
'dataProvider' => $companyModel,
'columns' => $columns,
]); ?>
列は、両方のビューでは、主に似ていますが、最初の3つの列にはいくつかの違いがあります。私がしたいのは、どのウィジェットが現在コンパイルされているかを判断して、そのウィジェットの適切な列を動的に作成できるようにすることです。例:
<?php
$columns=[];
// here is where the problem is. I would like to do something along these lines:
if(GridView->dataProvider->id == 'userModel')
{
// add custom columns
$columns[] = 'userName';
} else {
// etc...
}
// common columns used by both grids here
$columns[] = [
'totalCount',
'totalCost',
];
ご協力いただければ幸いです。