2017-04-13 56 views
0

所以我在使用symfony一段時間,但有一個問題,每當我面對它時,我都非常生氣,認真:)。
我們假設我有一個實體ClientOneToMany與實體Address的關係,假設我有一個包含兩個選擇的表單:客戶端和地址,所以我選擇一個客戶端並使用ajax動態使用ajax加載它的地址在下面的圖片:
enter image description here 與選定的客戶端和地址的symfony發送表格後給了我這個錯誤有關地址選擇
This value is not valid
這是我的建設者,給了我這個錯誤:
Symfony3:動態添加新數據後無法發送表格

$builder 
->add('client', EntityType::class, array(
       'class' => Client::class, 

    )) 
->add('addresses', EntityType::class, array(
       'class' => Address::class, 
       'choices' => array(), //---To force symfony to not launch a query to get all addresses 
    )) 

當我刪除行'choices' => array()表單工作正常,並正確發送數據。
我真的需要解決這個問題,因爲我在我的應用程序中需要類似的東西,我現在正在處理它。

回答

0

有了這段代碼,就好像你告訴Symfony接受不了的東西。

'choices' => array() 

顯然在您的應用程序中,地址的選擇取決於每個客戶端。所以解決方案是使用表單事件來動態修改你的表單。這裏是Symfony官方文檔的一個很好的例子。 Dynamic Generation for Submitted Forms

相關問題