Symfony 使用两个实体创建表单

Symfony 使用两个实体创建表单,symfony,Symfony,我使用一个通用表单类型类来创建应用程序中的所有表单。从控制器中,我只向它传递一些参数,以便它知道要渲染哪些字段。例如: $form = $this->createForm(new CommonType($repository, $queryResultSet), new UsersEntity(), [ 'action' => $this->generateUrl('user_edit'), 'a

我使用一个通用表单类型类来创建应用程序中的所有表单。从控制器中,我只向它传递一些参数,以便它知道要渲染哪些字段。例如:

$form = $this->createForm(new CommonType($repository, $queryResultSet), new UsersEntity(),
        [
            'action'          => $this->generateUrl('user_edit'),
            'attr'            => ['class' => 'stdform'],
            'repository_name' => 'AcmeBundle:Users'
        ]);
然后,
CommonType
class根据存储库类中的数组生成字段


但是我现在需要添加两个实体-表单必须包含
user
shop
存储库/实体中的字段

我曾想过在这里创建两个表单并将它们连接起来,但我以后无法将其保存到数据库中

我怎样才能解决这个问题


我不能使用表单嵌入,因为我的例子中有
CommonType
类。

您应该创建一个表单文件夹并拥有表单类型。通过调用特定的类型,它更干净,节省更多的时间。我有。但我仍然无法添加另一个实体,该实体将根据特定的存储库类生成字段。您应该单独创建它们,并根据它们的关系将子表单添加到基本表单中。在ORM映射中,不要忘记添加:persist。