Yii2:redirect 到提交按钮的特定操作
Yii2:redirect to specific action from submit button
我无法将自定义表单重定向到特定操作。
我正在尝试的是
<?= Html::submitButton( 'delete-selected' ,['class' => 'btn btn-primary']) ?>
这里 delete-selected
是我在控制器中的自定义操作 appointment
。
我也试过这样:
public function actionDeleteForm()
{
return $this->render('delete');
return $this->redirect(['delete-selected']);
}
public function actionDeleteSelected()
{
Appointment::deleteAll(['doctor_name' =>4]);
return $this->redirect(['index']);
}
我想做的实际上是使用表单删除一些记录。表单名称是 delete
,有一个 select 下拉字段。
我想 post 数据操作 deleteselected
并在删除查询中使用 $_POST 变量。
我该怎么做?
谢谢。
在 actionDeleteForm 中你有
return $this->render('delete');
之前
return $this->redirect(['delete-selected'])
第二条指令将永远不会执行,因为您已经对函数进行了 return,然后控制权已经 return 给了调用者
您放置在表单上的任何提交按钮都会提交到表单的操作参数中指定的 url。如果你没有指定一个,那么 Yii 将使用当前的 controller/action 形式。如果您想覆盖此行为,则需要为表单指定一个操作。例如
$form = ActiveForm::begin([
'action' => 'appointment/delete-selected'
]);
这是 的注释。如果您应该使用控制器的操作覆盖表单的操作,请确保将 'action' 的值设为数组:
$form = ActiveForm::begin([
'action' => ['appointment/delete-selected']
]);
它将操作视为控制器 appointment
中操作 delete-selected
的路径。
我无法将自定义表单重定向到特定操作。
我正在尝试的是
<?= Html::submitButton( 'delete-selected' ,['class' => 'btn btn-primary']) ?>
这里 delete-selected
是我在控制器中的自定义操作 appointment
。
我也试过这样:
public function actionDeleteForm()
{
return $this->render('delete');
return $this->redirect(['delete-selected']);
}
public function actionDeleteSelected()
{
Appointment::deleteAll(['doctor_name' =>4]);
return $this->redirect(['index']);
}
我想做的实际上是使用表单删除一些记录。表单名称是 delete
,有一个 select 下拉字段。
我想 post 数据操作 deleteselected
并在删除查询中使用 $_POST 变量。
我该怎么做?
谢谢。
在 actionDeleteForm 中你有
return $this->render('delete');
之前
return $this->redirect(['delete-selected'])
第二条指令将永远不会执行,因为您已经对函数进行了 return,然后控制权已经 return 给了调用者
您放置在表单上的任何提交按钮都会提交到表单的操作参数中指定的 url。如果你没有指定一个,那么 Yii 将使用当前的 controller/action 形式。如果您想覆盖此行为,则需要为表单指定一个操作。例如
$form = ActiveForm::begin([
'action' => 'appointment/delete-selected'
]);
这是
$form = ActiveForm::begin([
'action' => ['appointment/delete-selected']
]);
它将操作视为控制器 appointment
中操作 delete-selected
的路径。