0

我是 Symfony 初学者,我的方法可能不是正确的做事方式,所以请帮助我做错了什么。在我的base.html.twig我包括一个“菜单模板”,{% include'::menu.html.twig' %}它包含所有工作正常的默认顶部菜单项。

现在我要做的是在一个about页面上,我需要一个名为“Extra”的附加菜单选项,它确实出现但不是菜单的一部分。我想如果你调用parent()它应该像你尝试使用添加额外的 css 或 js 文件一样工作parent

这就是我的about.html.twig样子

{% extends "::base.html.twig" %}

{% block topmenu %}
    {{ parent() }}
    <li><a href="">Extra</a></li>
    {% endblock %}

{% block body %}
This is body
{% endblock %}

这就是我在浏览器中看到的,菜单选项Extra需要成为菜单其余部分的一部分

我将非常感谢这里的任何帮助。 在此处输入图像描述

这就是我的menu.html.twig样子

{% block topmenu %}
    <header class="navbar navbar-inverse navbar-fixed-top wet-asphalt" role="banner">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                <a class="navbar-brand" href="index.html"><img src="" alt="logo"></a>
            </div>
            <div class="collapse navbar-collapse">
                <ul class="nav navbar-nav navbar-right">
                    <li class="active"><a href="">Home</a></li>
                    <li><a href="">About Us</a></li>
                    <li><a href="">Services</a></li>
                    <li><a href="">Portfolio</a></li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Pages <i class="icon-angle-down"></i></a>

                    </li>
                    <li><a href="">Blog</a></li>
                    <li><a href="">Contact</a></li>
                </ul>
            </div>
        </div>
    </header>
{% endblock %}
4

1 回答 1

0

与其尝试在特定路线上的模板中添加额外的行,不如在该路线上设置一个条件以显示这个额外的菜单:

        <div class="collapse navbar-collapse">
            <ul class="nav navbar-nav navbar-right">
                <li class="active"><a href="">Home</a></li>
                <li><a href="">About Us</a></li>
                <li><a href="">Services</a></li>
                <li><a href="">Portfolio</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Pages <i class="icon-angle-down"></i></a>

                </li>
                <li><a href="">Blog</a></li>
                <li><a href="">Contact</a></li>
                {% if app.request.attributes.get('_route') == 'my_route' %}
                    <li><a href="">Extra</a></li>
                {% endif %}
            </ul>
        </div>
于 2017-05-22T10:33:34.207 回答