繁体   English   中英

使用表单编辑实体零件

[英]Edit entity part with form

我有一个实体(大约20/25个字段),我想用表格对其进行编辑。

我只想编辑(和显示)一些表单字段。

问题是,显示的所有字段均已正确更新,但默认情况下未呈现的字段已更新为“空”值。

我的控制器:

$em = $this->getDoctrine()->getManager();

$LaboRequest= $em->getRepository('MyBundle:LaboRequest')->find($id);
$form = $this->createForm('MyBundle\Form\LaboRequestType', $LaboRequest);

if ($request->isMethod('POST') && $form->handleRequest($request)->isSubmitted() && $form->isValid()) {

    $em->persist($LaboRequest);
    $em->flush();

    return $this->redirectToRoute(...);
}

return $this->render('...', array(
            'LaboRequest' => $LaboRequest,
            'form' => $form->createView(),
        ));

我在视图中只渲染很少的字段,因此我可以理解,默认情况下,symfony对未渲染的字段使用“ null”。

但是,有没有一种方法可以编辑实体的一部分并且不影响值为“ null”的实体的数据?

我不确定您能做到这一点。 但您可以扩展原始格式并致电

$builder->remove('xxx')

对于您要删除的每个字段

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM