サイドバーのメニュー項目を変更できます。
これを行うには、必要な方法でメニューを構成するリスナーを作成する必要があります。あなたはメニューを変更するクラスを書くことができます。その後
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
驚くほど簡単だった:この機能を実行する必要があり、私はこれがあなたに
を助けるかもしれないあなたがここにこれについての詳細情報を持っている願っています!ありがとうございました ... –