什么更好?成功提交表单后返回重定向或进行渲染?
重定向:
public function newAction(Request $request)
{
// ...
if ($form->isValid()) {
return $this->redirect(/* ... */);
}
return $this->render(/* ... */);
}
第二
public function newAction(Request $request)
{
// ...
if ($form->isValid()) {
return $this->render(/* ... */);
}
return $this->render(/* ... */);
}
答案 0 :(得分:6)
如果表单是通过POST
方法发送的 - 最好的方法是将用户重定向到某个页面(例如,重定向到实体列表)。它可以防止用户再次重新提交表单。
更好地使用Symfony
的redirectToRoute()
>=2.6
方法
但是如果你使用GET
方法 - 你肯定想使用render()
方法(例如,为了根据你的GET查询显示一些过滤实体或数据)。