我有ItemController并且在actionView中我放了我的Itempicture的gridview,我想当我点击图标视图,更新并删除然后转到ItempictureController。
那么如何用不同的控制器更改gridview中的控制器动作?
答案 0 :(得分:22)
在您的gridview中,添加
[
'class' => 'yii\grid\ActionColumn',
'template' => '{new_action1}{new_action2}',
'buttons' => [
'new_action1' => function ($url, $model) {
return Html::a('<span class="glyphicon glyphicon-eye-open"></span>', 'controller/action?id='.$model->id, [
'title' => Yii::t('app', 'New Action1'),
]);
}
],
],
希望这会奏效!
答案 1 :(得分:22)
您需要设置yii \ grid \ ActionColumn的$ controller属性。在你的情况下,试试这个:
[
'class' => 'yii\grid\ActionColumn',
'controller' => 'itempicture'
]
http://www.yiiframework.com/doc-2.0/yii-grid-actioncolumn.html#$controller-detail
如果您使用的是yii \ data \ ArrayDataProvider,请确保将$ key属性设置为:
$ dataProvider-&gt; key ='id'; // id是Itempicture模型的主键名。
http://www.yiiframework.com/doc-2.0/yii-data-arraydataprovider.html#$key-detail
希望它有所帮助。
答案 2 :(得分:5)
试试这个:
[
'class' => 'yii\grid\ActionColumn',
'template' => '{view}',
'controller' => 'ItempictureController'
]
https://github.com/yiisoft/yii2/blob/master/docs/guide/output-data-widgets.md#action-column
答案 3 :(得分:3)
[
'class' => 'yii\grid\ActionColumn',
'template' => '{view}',
'controller' => 'itempicture'
]