在siteController
我寫查詢並將dataProvider
的數組傳遞給index.php
以顯示包含表格形式。在index.php
我想顯示member name
而不是memberID
。對於我寫的內部查詢併成功地在命令提示運行successfully.Here我無法打印first name
而不是「member id
」如何在yii2的網格視圖中顯示另一個表的數據?
public function actionIndex()
{
$query = new \yii\db\Query;
$query->select(['member.firstName',
'complaint.practiceCode','complaint.id',
'complaint.description','member.firstName'])
->from(['complaint'])
->innerJoin(['member','complaint.memberID = member.id'])
->groupBy(['complaint.id'])
->where(['complaint.deleted' => 'N']);
$query->createCommand();
在這裏,我必須通過創建$dataProvider4
通的數據,但我不能設置值firstName
而不是memberID
。
$dataProvider4= new ActiveDataProvider([
'query' => $query,
'pagination' => false,
]);
return $this->render('index', [
'dataProvider4'=>$dataProvider4]);
<?= GridView::widget([
'dataProvider'=>$dataProvider4,
'summary'=>'Total'.' <b>'.$complaintModel.'</b> '.'Complaints',
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'practiceCode',
// 'memberID',
'description',
'status',
],
]); ?>
我已經通過dataProvider傳遞數據。
發佈gridview的完整代碼 – GAMITG