如何在KnopMenuBundle的Builder中获取用户数据?
我知道我可以通过Controller中的这一行获取用户数据:
$user = $this->get('security.context')->getToken()->getUser();
您可以在中看到,您的MenuBuilder被定义为Symfony2中的服务
https://github.com/KnpLabs/KnpMenuBundle/blob/master/Resources/doc/menu_service.rst
https://github.com/KnpLabs/KnpMenuBundle/blob/master/Resources/doc/menu_service.rst
基本上,您需要做的就是配置MenuBuilder服务定义以注入安全上下文. (http://symfony.com/doc/current/book/service_container.html#referencing-injecting-services)