2015-09-04 102 views
0

我有一個視圖,顯示我的父實體的屬性。這個實體將有其他的子實體。我希望將這些孩子的創建表單放在我父母的show.html.twig中。從其他控制器的Symfony窗​​體

如何將這些孩子的創建形式放在我父母的視圖中?我如何組合兩個不同實體的兩個控制器?

+0

你可以谷歌嵌入式的形式或採取在這裏看看:http://symfony.com/doc/current/book/forms.html#embedded-forms –

回答

0

您可以爲任何控制器中的任何實體創建表單。既然你沒有發佈任何代碼,很難猜測你的控制器的樣子,但在這裏的例子,這可能有助於:

public function showMainEntityAction(MainEntity $mainEntity){ 

    ... 

    $childEntity = new ChildEntity(); 
    $childEntity->setMainEntity($mainEntity); 

    $childEntityForm = $this->createForm(new ChildEntityType(), $childEntity); 

    ... 

    return $this->render('...show.twig.html', array(
     'entity' => $mainEntity, 
     'childEntityForm' => $childEntityForm 
    ); 
} 

當然,你必須定義表單類型的子實體,並添加form_widget(childEntityForm)到你的模板。

相關問題