如何在没有重复代码的情况下获取Symfony 5页面中的当前页面?
我想得到当前的网页,并给出一个活动类没有重复的代码在symfony 5。 下面是代码示例:如何在没有重复代码的情况下获取Symfony 5页面中的当前页面?,symfony,navigation,twig,current-page,Symfony,Navigation,Twig,Current Page,我想得到当前的网页,并给出一个活动类没有重复的代码在symfony 5。 下面是代码示例: <li class="{{ app.request.get('_route_')=='home' ? 'active':''}}"> <a href="{{path('home')}}">Home</a> </li> <li class="{{ app.reques
<li class="{{ app.request.get('_route_')=='home' ? 'active':''}}">
<a href="{{path('home')}}">Home</a>
</li>
<li class="{{ app.request.get('_route_')=='contact' ? 'active':''}}">
<a href="{{path('contact')}}">Contact</a>
</li>
</ul>
U可以在模板中创建一个细枝变量,使其可读性更好
{% set page = app.request.get('_route') %}
然后使用If条件进行测试
<li {% if page == 'home' %} class="active" {% endif %} >
<a href="{{path('home')}}">Home</a>
</li>
<li {% if page == 'contact' %} class="active" {% endif %} >
<a href="{{path('contact')}}">Contact</a>
</li>
作为@DhiaDjobbi答案的扩展
如果你真的想减少“重复”代码,我也会在数组中定义菜单
{%set-active\u-page=app.request.get(“\u-route”)%}
{第%页中的第%页}
{%endfor%}