0

我有一个带有侧边栏的布局。在侧边栏内,有一个用于显示类别列表的块。我已经调用了一个控制器(获取类别列表)以在此块内呈现。这是我的侧边栏的样子:

这是我的包含侧边栏的主要布局文件:

<!--  siteLayout.html.twig   -->
<div id="sidebar">
  {% block sidebarBlock1 %}
    {% render "TestBundle:Index:categoryList" %}
  {% endblock %}
</div>

TestBundle:Index:categoryList从数据库中获取类别列表并返回如下:

<ul>
   <li><a href="/category/1">Category 1</a></li>
   <li><a href="/category/2">Category 2</a></li>
</ul>

我所有的其他视图都扩展了 siteLayout.html.twig。我想要的是,当用户加载此 url “/category/1”时,我想将 css 类添加到 li 标签。

例如,如果有人点击 /category/1 那么输出应该是

<li class="active">.......</li>

我怎样才能做到这一点?

4

2 回答 2

0
<li  {% if app.request.attributes.get('_route') == 'category_view' %} 
         class="active" 
     {% endif %}>
</li>

如果路线与您的类别路线匹配,请检查路线并设置类别。将 category_view 替换为 /category 的路由名称

于 2013-02-20T13:22:50.027 回答
0
   {%if app.request.server.get('REQUEST_URI')== path('viewCategoryItems', {'slugName': category.slugName})%} class="active"{%endif%}

这对我有用

于 2013-02-20T14:05:29.233 回答