我Product
實體具有以下結構:在Symfony的2
private $id;
private $title;
/**
* @ManyToOne(targetEntity="Category")
* @JoinColumn(name="cat_id", referencedColumnName="id")
*/
private $category;
Category
具有嵌套結構。和築巢的每個級別顯示在5個獨立的領域:
在課堂形式的代碼,我解決它以這樣的方式
$builder
->add('cat_1', 'entity', array(
...
'query_builder' => function() { return someSelectLogic1(); }
))
->add('cat_2', 'entity', array(
...
'query_builder' => function() { return someSelectLogic2(); }
))
->add('cat_3', 'entity', array(
...
'query_builder' => function() { return someSelectLogic3(); }
))
->add('cat_4', 'entity', array(
...
'query_builder' => function() { return someSelectLogic4(); }
))
->add('cat_5', 'entity', array(
...
'query_builder' => function() { return someSelectLogic5(); }
))
現在我需要知道哪些字段填入最後一個回合並在實體屬性中傳遞該字段的值。
在所有我不喜歡:
複雜的邏輯來確定哪些場與類別填充在端
這些字段的不依賴於所述實體
'mapped' => false
1)什麼正確的方式來組織我的表單的代碼?
2)有沒有辦法將這些字段放入一個單獨的類,它將處理確定哪個類別被選中的邏輯?