首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法覆盖KnpMenuBundle模板

无法覆盖KnpMenuBundle模板
EN

Stack Overflow用户
提问于 2014-06-26 00:38:13
回答 1查看 1.9K关注 0票数 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:

代码语言:javascript
复制
...
{{ render(controller('VolVolBundle:Default:userMenu')) }}
...

userMenuAction:

代码语言:javascript
复制
$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

代码语言:javascript
复制
...
{% if type is not null %}
    {% set menu = "VolVolBundle:Builder:"~type~"Menu" %}
    {{ knp_menu_render(menu) }}
{% endif %}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-26 13:45:23

答案是深度在这里。要对模板进行全局覆盖,所需要的就是修改config.yml

config.yml:

代码语言:javascript
复制
...
knp_menu:
    twig:  # use "twig: false" to disable the Twig extension and the TwigRenderer
        template: VolVolBundle:Menu:knp_menu.html.twig
...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24420769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档