2016-04-29 67 views
1

Symfony 3中有一種解決方案可以在一個頁面上處理多種形式?Symfony3中的一個頁面上有多種形式

它的基本工作,但提交一個窗體結束爲空值爲另一種形式,因爲所有的形式似乎有相同的名稱(形式)。

我的頁面上有多個handleRequests,每一個表格

$form->handleRequest($request); 

... 

$secondform->handleRequest($request); 

我想我會需要一個可能性,以檢查其形式提交,但

$request->request->get($form->getName()) 

給出了兩個相同的名稱表格,所以這是行不通的。

是否有解決方案來處理多個表單或可能更改每個表單的名稱?

+0

可能的重複:http://stackoverflow.com/questions/23994563/symfony2-two-forms-in-a-same-page 如果給定的解決方案不適用於喲,請分享您的一些代碼。 –

+0

你也可以給你的提交按鈕不同的名稱和關鍵的:http://symfony.com/doc/current/book/forms.html#submitting-forms-with-multiple-buttons – Cerad

+0

該解決方案不起作用就像Symfony2一樣,我仍然在尋找在Symfony3中爲表單命名的可能性。 我試圖用 $請求 - >請求 - > GET($形式 - >的getName()) ,以找出是否一種形式是,但要求提交給做每個表單需要有一個唯一的名稱所有形式都是「形式」的名稱。 – Invis00

回答

2

我在一個頁面上處理多個動態生成的表單時遇到了這個問題。 isSubmitted()表現得並不理想,因爲我相信它會根據表單名稱進行檢查,並且所有表單都具有相同的名稱。因此,提交一份表格更新所有表格與該表格的數據。

我用Form Factory的createNamed方法解決了這個問題。

這是對的Symfony V3.2.1測試

​​

模板是不言自明,只是遍歷窗體視圖,通常使它們。確保你明確輸出每個表格的form_end(),但是,當我使用form_rest()時,我感到奇怪。

相關問題