yii2在gridview中更改控制器操作

Ded*_*wan 7 grid gridview action controller yii2

我有ItemController并在actionView中我把我的Itempicture的gridview,我想要当我点击图标视图,更新和删除然后转到ItempictureController.

那么如何用不同的控制器改变gridview中的控制器动作?

Den*_*G B 22

在gridview中,添加like

[
  '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'),
        ]);
    }
  ],
],
Run Code Online (Sandbox Code Playgroud)

希望这会奏效!


小智 22

您需要设置yii\grid\ActionColumn的$ controller属性.在你的情况下,试试这个:

[
    'class' => 'yii\grid\ActionColumn',
    'controller' => 'itempicture'
]
Run Code Online (Sandbox Code Playgroud)

http://www.yiiframework.com/doc-2.0/yii-grid-actioncolumn.html#$controller-detail

如果您使用的是yii\data\ArrayDataProvider,请确保将$ key属性设置为:

$ dataProvider-> key ='id'; // id是Itempicture模型的主键名称.

http://www.yiiframework.com/doc-2.0/yii-data-arraydataprovider.html#$key-detail

希望能帮助到你.


小智 5

试试这个:

[
   'class' => 'yii\grid\ActionColumn',
   'template'    => '{view}',
   'controller' => 'ItempictureController'
]
Run Code Online (Sandbox Code Playgroud)

https://github.com/yiisoft/yii2/blob/master/docs/guide/output-data-widgets.md#action-column