我正在尝试用Symfony2创建一个非常简单的论坛.
我的实体是:
ForumCategory(名称,描述……)
ForumTopic(category_id,title)
ForumPost(isFirstPost,body,topic_id,author_id ……)
当用户尝试创建主题时,我想在同一页面中只显示一个表单来创建主题和第一个帖子消息.喜欢:
[…]
我怎样才能做到这一点?在这种情况下,可能合并两种形式?
解决方法
创建一个包含两个子表单的表单类型.
class MergedFormType $builder->add('topic',new TopicFormType()); $builder->add('post',new PostFormType());
在您的控制器中只需将数组传递给MergedFormType
public function myAction() $formData['topic'] = $topic; $formData['post'] = $post; $form = $this->createForm(new MergedFormType(),$formData);