【发布时间】:2016-10-19 14:04:16
【问题描述】:
在系统(Symfony 2.8)中,对于某些对象,我们在对象列表和对象的“详细信息”页面上都有“编辑此”按钮。我的客户在提交正确的数据后突然希望所有表单重定向到他的来源。
所以我想我可以在会话中保存原点然后重定向,但我想以一种通用的方式来做,比如在每个允许输入“编辑”或“创建”或任何东西的操作上,我会这样做:
$this->get('session')->set(
'formOrigin',
[
'route' => $this->get('request')->get('_route'),
'arguments' => ???
]
)
然后在处理完表单中的数据后,从会话中获取来源,如果不为空
return $this->redirectToRoute($formOrigin['route'], $formOrigin['arguments']);
但问题是代码中的??? :) 你能在这里给我一个提示吗?
为了澄清,我可以“从某个地方”获取路由参数作为数组,还是我每次都必须自己构建它?我可以构建它,但对我来说它看起来很丑......
【问题讨论】:
-
你能把referer用作
$request->headers->get('referer')吗?
标签: php symfony session routing