Symfony forms 我应该如何在Symfony2表单中嵌入新实体的集合?

Symfony forms 我应该如何在Symfony2表单中嵌入新实体的集合?,symfony-forms,symfony-2.1,Symfony Forms,Symfony 2.1,我需要写一个表格来创建一个新的实体,并用它,最多3个关系(这是新的实体) 我可以让它动态地附加/删除它们(这可能很有用),或者让所有3个都始终与实体相关,并且让它们在它们上面有一个“活动”布尔值,这也同样合适 我应该在什么时候这样做?我需要将它们呈现为表单上的复选框 到目前为止,我已经尝试在将其传递到表单之前将其附加到实体,但是选择字段不能传递给未映射的实体,因此这是不好的 我还为此修补了一个DataTransformer,不过,就我所见,我必须在DataTransformer中创建新的实体,

我需要写一个表格来创建一个新的实体,并用它,最多3个关系(这是新的实体)

我可以让它动态地附加/删除它们(这可能很有用),或者让所有3个都始终与实体相关,并且让它们在它们上面有一个“活动”布尔值,这也同样合适

我应该在什么时候这样做?我需要将它们呈现为表单上的复选框


到目前为止,我已经尝试在将其传递到表单之前将其附加到实体,但是选择字段不能传递给未映射的实体,因此这是不好的

我还为此修补了一个DataTransformer,不过,就我所见,我必须在DataTransformer中创建新的实体,这似乎是错误的,而且我无论如何都无法工作——我无法访问其中的实体,甚至无法绕过它,关系无法正确绑定(学说首先试图挽救关系)


在Symfony1术语中,我可以使用新对象为我需要的每个附加关系嵌入两个表单,这样就行了,所以肯定还有相对简单的方法解决这个问题


一位朋友还建议查看ResizeFormEventListener,但据我所知,这是用于根据返回的数据“调整”窗体的大小,虽然我从不希望窗体更改,但我始终需要3个复选框



解决这个问题的最佳方法是什么?

我不确定不使用它的确切细节-但基于我做类似事情的方式,我希望使用“collectiontype”,然后将三种部门类型添加到其中。

您使用的是2.0还是2.1?(这两种类型之间的表单系统有很多变化。)您正在创建什么类型的实体以及它们之间的关系是什么?我不清楚复选框是从哪里来的。但我猜您希望只使用常规的choice元素,然后在表单验证后添加相关的对象。澄清用例可能会使事情更清楚。我使用的是2.1。对不起,我之前写过这个他的早晨,我想表达的是,我还需要3个复选框,不管这些对象是否存在(我真的不在乎)勾选这些框需要将部分或所有对象设置为“活动”,或者在它们不存在的情况下创建它们。好的。我对2.1没有太多实际操作经验,但您需要添加三个关系,使用“集合”字段组,并为呈现复选框的关系创建一个表单类型。然后,您需要通过使用级联或在刷新之前单独保持关系来确保条令是令人满意的。是的,这看起来像是答案,看起来像Ben首先到达了那里!我已经让它工作了一半,但不管怎样,谢谢。