从表单Symfony2中的更新过程中排除实体字段

时间:2012-03-23 11:55:19

标签: symfony twig

我处于一种实体的编辑形式与创建形式略有不同的情况。我没有显示某些字段,因为我不希望它们可编辑。

但是当我保存此表单时,所有未包含的字段都设置为null并保存,但我想从整个更新过程中排除这些字段。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:5)

有几种选择:

  • 创建基本表单类型进行编辑并对其进行扩展,以添加其他字段进行创建。
  • 只保留一种表单类型,但有条件地添加一些字段 - 也就是说,仅当实体是新的时。您可以将表单类型中的实体设为$options['data'],并检查其ID是否为null或其他。
  • 使用form events

答案 1 :(得分:0)

另一种选择是提交表单而不是handleRequest,并将第二个参数$ clearMissing传递给false:

$editForm->submit($request->request->get('form_name'), false);
相关问题