2012-04-27 53 views
1

我將設置一些最多可容納100個字段的大型表格。Symfony2:大型表格的最佳實踐

現在我的問題是,如果有處理這種形式的一些最佳做法。

特別:

  1. 實體間關係
  2. 窗體對象是自

是否有人對此類任務的經驗嗎? 我應該把所有的東西都放在一個實體中,一個表格中,用jQuery在子表單中構建,還是應該儘可能將屬性分組到數組中?

問候, 博多

回答

1

而直接相關的實體形式的官方文檔顯示例子很多,我覺得這是不是最好的方法。在極少情況下,這很好,當你的表單與你的實體具有完全相同的字段時。

你的表單必須表示你在瀏覽器中得到的,所以只有html輸入/ textearea/select。我通常創建一個formData類,就像一個實體一樣,它擁有驗證約束並具有與窗體相同的結構。

你必須加載表格前初始化這個FORMDATA你堅持DATAS對象,並提交後,你與你的FORMDATA對象更新實體...

+0

嗨,我不明白這個解決方案的好處是什麼? 或者你的意思是說,formData具有所有的屬性,並將其映射到實體的有序屬性? – bodokaiser 2012-04-27 18:06:02

+0

我的FormData對象映射到窗體上,而不是實體上。它知道如何設置它的屬性從給定的實體/ ies – AlterPHP 2012-04-28 13:24:19

1

我創建從多個內置了一些複雜的形式實體。 I create a form class爲每個實體,然後創建一個複合表單類,它包含我需要的各種表單組合(這在某種程度上類似於PéCé的建議)。

如果我不需要所有的字段,那很好,因爲我可以控制在樹枝模板中呈現哪些字段。如果我需要不在表單類中的字段,我可以將它們添加到模板並根據需要處理表單數據。對於所有這些努力,我都有一些內置驗證和靈活性來重用來自多個實體和捆綁包的表單。

+0

嗨,我不需要FormTyleClass。這是我已經使用的。我的問題是我如何保持具有許多屬性的實體/表單儘可能簡單。一個建議是將屬性組合並將子屬性保存在數組中。現在我感興趣的是其他人如何處理這個問題 – bodokaiser 2012-04-27 18:06:22