如何在Symfony2中合并2表单

Die*_*ego 6 forms entities symfony

我正在尝试用Symfony2创建一个非常简单的论坛.

我的实体是:ForumCategory(名称,描述......)ForumTopic(category_id,title)ForumPost(isFirstPost,body,topic_id,author_id ......)

当用户尝试创建主题时,我想在同一页面中只显示一个表单来创建主题和第一个帖子消息.喜欢:

  • 插入主题标题:...
  • 插入主题正文(相关帖子正文):...

[...]

我怎样才能做到这一点?在这种情况下,可能合并两种形式?

Cer*_*rad 14

创建一个包含两个子表单的表单类型.

class MergedFormType

    $builder->add('topic', new TopicFormType());
    $builder->add('post',  new PostFormType());
Run Code Online (Sandbox Code Playgroud)

在您的控制器中只需将数组传递给MergedFormType

public function myAction()

    $formData['topic'] = $topic;
    $formData['post']  = $post;

    $form = $this->createForm(new MergedFormType(), $formData);
Run Code Online (Sandbox Code Playgroud)