2017-06-25 73 views
1

我有一個GridView在GridView控件連接兩個領域(一個匿名函數)

<?= GridView::widget([ 
     'dataProvider' => $dataProvider, 
     'columns' => [ 
      'team2.name',  
      [ 
       'header' => 'Players name', 
       'format' => 'raw', 
       'value'=>function ($model) { 
        return implode('', ArrayHelper::getColumn($model->playerLastnames, 'lastname')); 
       }, 
      ], 
     ], 
    ]); ?> 

這工作,我有團隊在第一欄和玩家的第二個名字的名字。 的問題是如何使這種格式的一列: 球隊的名稱(玩家名)

回答

2

假設隊名是在模型作爲your_team_name 你可以使用匿名函數concatenete都

<?= GridView::widget([ 
     'dataProvider' => $dataProvider, 
     'columns' => [ 

      [ 
       'header' => 'Team and Players name', 
       'format' => 'raw', 
       'value'=>function ($model) { 
        return $model->your_team_name . ' ' . implode('', ArrayHelper::getColumn($model->playerLastnames, 'lastname')); 
       }, 
      ], 
     ], 
    ]); ?> 
+0

謝謝!正是我需要的。 – Vadim