我正在寻找一些方法来实现yii2
的以下内容:
让我们假设我们有以下结构: - rawMaterial表。 - rawMaterialentry表
每个rawMaterial - >有一个或多个条目。
我想要做的是在视图上显示rawMaterial的详细信息,并在其下显示所有条目的网格视图。换句话说,是一个主 - 细节视图。
我的问题是,在条目的gridview中,属于当前的rawMaterial,当我尝试更新,查看或删除任何条目时,它将我带到rawMaterial而不是Entry视图
答案 0 :(得分:2)
您只需在ActionColumn
配置中设置controller
。
应处理此处指定的操作的控制器的ID。如果未设置,它将使用当前活动的控制器。
e.g。 :
[
'class' => 'yii\grid\ActionColumn',
'controller' => 'entry',
]
答案 1 :(得分:0)
您必须更改GridView的ActionButtonColumn
以提供适当的网址。否则GridView将使用当前的控制器。
[
'class' => 'yii\grid\ActionColumn',
'template' => '{update}{view}',
'buttons' => [
'update' => function($url ,$model){
$url= Yii::$app->urlManager->createAbsoluteUrl(['/entry/update', 'id' => $model->id ]);
return Html::a('<span class="glyphicon glyphicon-pencil">', $url);
},
'view' => function($url ,$model){
$url= Yii::$app->urlManager->createAbsoluteUrl(['/entry/view', 'id' => $model->id ]);
return Html::a('<span class="glyphicon glyphicon-eye-open">', $url);
}
]