사이드 바 메뉴 항목을 수정할 수 있습니다.
이렇게하려면 원하는 방식으로 메뉴를 구성하는 수신기를 만들어야합니다.
app.menu_listener:
class: AppBundle\EventListener\MenuBuilderListener
tags:
- { name: kernel.event_listener, event: sonata.admin.event.configure.menu.sidebar, method: addMenuItems }
calls:
- [ setDependencies, [ @doctrine.orm.entity_manager ] ]
당신이 메뉴 수정 클래스 쓸 수 후 : 당신은이 코드를 사용하여이 작업을 수행 할 수
namespace AppBundle\EventListener;
use AppBundle\Entity\Configuration;
use Sonata\AdminBundle\Event\ConfigureMenuEvent;
use Doctrine\ORM\EntityManager;
class MenuBuilderListener {
/** @var EntityManager $em */
private $em;
public function addMenuItems(ConfigureMenuEvent $event)
{
$articles = $this->em->getRepo('AppBundle:Article')->findAll();
$menu = $event->getMenu();
$articleMenu = $menu->getChild('sonata.admin.group.articles');
$articleMenu->setLabel('Articles <span>' . $articles->count() . '</span>')
}
public function setDependencies(EntityManager $em, Translator $translator) {
$this->em = $em;
}
}
이것은 단지 예입니다,하지만 난 경우 수행 할 방법 이 기능을 수행해야합니다, 나는이 당신은 여기에 대한 자세한 정보가 당신에게
도움이 될 수 있습니다 희망 : 놀라 울 정도로 쉬웠다 https://sonata-project.org/bundles/admin/master/doc/cookbook/recipe_knp_menu.html
! 고맙습니다 ... –