Я пытаюсь настроить администратора в качестве дочернего элемента другого администратора в Sonata Admin Bundle.
У меня 2 класса админа:
CategoryAdmin
Этот класс содержит следующий методprotected function configureSideMenu(MenuItemInterface $menu, $action, AdminInterface $childAdmin = null) { $id = $this->getRequest()->get('id'); $menu->addChild( $this->trans('Projects'), array('uri' => $this->getChild('sonata.admin.project')->generateUrl('list', array('id' => $id))) ); }
ProjectAdmin
Этот класс содержитprotected $parentAssociationMapping = 'category';
category
- свойство в классе модели, представляющее ассоциацию ManyToOne.
Я добавил следующие строки в конфигурацию моей службы для CategoryAdmin
calls:
- [ addChild, ["@sonata.admin.project"]]
Маршруты для дочернего администратора не создаются с этой конфигурацией. Ссылка в боковом меню (верхнее меню) указывает на /admin/project/list?childId=1&id=1
Вот результат дочерних элементов CategoryAdmin
с dump()
array:1 [▼
"sonata.admin.project" => ProjectAdmin {#406 ▶}
]
Это означает, что конфигурация моего дочернего администратора кажется правильной. Понятия не имею, почему не создаются маршруты для дочернего админа.
Надеюсь, кто-нибудь подскажет, в чем может быть проблема.