从symfony中的Navbar上的base.html.twig激活链接

时间:2016-10-27 08:26:18

标签: php symfony twig

我在堆栈和其他任何来源上研究了很多东西。 我找到了一些有趣的想法,但不能应用它们,因为我是一名学生,不能只知道把东西直接放在正确的位置。

所以我在base.html.twig

中得到了这个代码
<ul class="nav navbar-nav">
                    <li class="active">
                        <a href="{{ path('book_index') }}">Accueil<span class="sr-only">(current)</span></a>
                    </li>
                    <li><a href="{{ path('book_ourBooks') }}">Nos livres</a></li>
                    <li><a href="{{ path('book_aboutUs') }}">Être édité</a></li>
                </ul>

我想,在不使用Jquery的情况下,当我点击链接并转到该页面时能够显示活动状态。

我找到了那种代码:

class="{% if app.request.attributes.get('_route') == '_list' %}active{% endif %}"

(和其他看起来差不多的东西) 但我真的不知道如何以及在哪里将它与我自己的链接等等。 如果有任何帮助,非常感谢,谢谢:)

ps:我正在使用symfony 2.8

1 个答案:

答案 0 :(得分:2)

您需要在li's上插入代码,如下所示:

           <ul class="nav navbar-nav">
                <li class="{% if app.request.attributes.get('_route') == '_RouteName' %}active{% endif %}">
                    <a href="{{ path('book_index') }}">Accueil<span class="sr-only">(current)</span></a>
                </li>
                <li class="{% if app.request.attributes.get('_route') == '_RouteName' %}active{% endif %}">
                 <a href="{{ path('book_ourBooks') }}">Nos livres</a>
                </li>
                <li class="{% if app.request.attributes.get('_route') == '_RouteName' %}active{% endif %}">
                <a href="{{ path('book_aboutUs') }}">Être édité</a>
                </li>
            </ul>

_RouteName替换为每个链接的正确_route