比如我有3個實體:索納塔管理軟件包類型集合定製
- 類別
- 子目錄
- 產品
在SonataAdminBundle我希望能夠添加子類別,而在編輯子類別時編輯類別和產品。
按照這個想法我創建了字段,但是SonataAdminBundle開始與他們一起玩「Inception」。
當我打開類別I時,會看到包含相關產品的相關子類別。
在這種情況下,如何切斷「產品」字段?
更新:
我的課(簡體)是這樣的:
// .../CoreBundle/Admin/CategoryAdmin.php
protected function configureFormFields(FormMapper $formMapper) {
$formMapper
->add('name', null, array('required' => true))
->add('url', null, array('required' => true))
->add('subcategories', 'sonata_type_collection', array('by_reference' => true), array(
'edit' => 'inline',
'sortable' => 'pos',
'inline' => 'table',));
}
// .../CoreBundle/Admin/SubcategoriesAdmin.php
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name', null, array('label' => 'name'))
->add('category_id', null, array('label' => 'Category'))
->add('url', null, array('label' => 'Url'))
->add('products', 'sonata_type_collection',
array('by_reference' => false),
array(
'edit' => 'inline',
'sortable' => 'pos',
'inline' => 'table',
));
}
// .../CoreBundle/Admin/ProductsAdmin.php
protected function configureFormFields(FormMapper $formMapper) {
$formMapper
->add('name', null, array('label' => 'Заголовок'))
->add('subcategory_id', null, array('label' => 'Subcategory'));
}
模式是這樣的: 而在AdminBundle它看起來像這樣: