【发布时间】:2015-12-14 23:51:53
【问题描述】:
情况如下: 一些表单处理操作是从带有请求 POST 参数(即实体 ID)的 twig 模板调用的。提交表单并再次调用操作以修改底层对象的值后,我的 Request 对象中的实体 ID 参数消失了(它被 Symfony Form 请求对象取代)。
问题如下:在两次表单调用之间保留此请求参数的最佳做法是什么?
下面是简单的代码示例:
public function editEntityAction(Request $request, $type)
{
$objId = $request->request->get('entityId');
$updateObj = null;
$form = null;
$dbMen = $dbMen->getRepository('BakaMainBundle:Brand');
$updateObj = $dbMen->find($objId);
$form = $this->createForm(new AddBrand(), $updateObj);
if ($updateObj == null && $form == null)
$this->redirectToRoute('baka_main_main_index');
$form->handleRequest($request);
if ($form->isValid() && $form->isSubmitted())
{
$menager = $this->getDoctrine()->getManager();
$menager->flush();
}
return $this->render('@BakaMain/Specs/EditEntity.html.twig',
array('form' => ($form->createView()));
}
【问题讨论】: