使用...MyBundle\Resources\views\Menu\knp_menu.html.twig
,删除</li>
对呈现的菜单没有影响。(删除标签是为了删除内联列表元素之间的空格。)我已遵循此答案中提供的建议,包括该{% import 'knp_menu.html.twig' as knp_menu %}
帖子底部提到的建议。这是因为knp_menu.html.twig
已经扩展了knp_menu_base.html.twig
吗?或者是什么?
layout.html.twig:
...
{{ render(controller('VolVolBundle:Default:userMenu')) }}
...
用户菜单操作:
$user = $this->getUser();
$tool = $this->container->get('vol.toolbox');
$type = $tool->getUserType($user);
return $this->render(
'VolVolBundle:Default:userMenu.html.twig', array('type' => $type)
);
userMenu.html.twig
...
{% if type is not null %}
{% set menu = "VolVolBundle:Builder:"~type~"Menu" %}
{{ knp_menu_render(menu) }}
{% endif %}