0

使用...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 %}
4

1 回答 1

0

答案在这里深处找到了。对模板进行全局覆盖所需要做的就是修改config.yml.

配置.yml:

...
knp_menu:
    twig:  # use "twig: false" to disable the Twig extension and the TwigRenderer
        template: VolVolBundle:Menu:knp_menu.html.twig
...
于 2014-06-26T13:45:23.167 回答