如何在没有重复代码的情况下获得页面Symfony 5中的当前页面



我想要获得当前页面,并在symfony 5中给出一个没有重复代码的活动类。以下是代码示例:

<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>

作为@DhiaDjobbi答案的扩展

我真的很想减少";重复";代码,我会在数组中定义菜单以及

{% set active_page = app.request.get('_route') %}
{% for page in pages %}
<li  {% if page == active_page %} class="active" {% endif %} >
<a href="{{path(page)}}">{{ page }}</a> 
</li>
{% endfor %}

U可以在Template中创建一个更可读的twitch变量。

{% set page = app.request.get('_route') %}

然后使用If Condition进行测试。

<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>

相关内容

  • 没有找到相关文章

最新更新