Django получение параметра из url в шаблоне для установки CSS

В моем шаблоне есть динамический список меню категорий, который я хотел бы выделить (сделать активным), когда параметр url соответствует пункту меню. Таким образом, когда страница соответствует пункту меню, категория будет выделена.

Примеры URL:

https://[имя домена]/обучение/?категория=1

https://[имя домена]/обучение/?категория=2

https://[имя домена]/обучение/?категория=3

{% for categories in category_list %}
    <a href="{% url 'training' %}?category={{categories.Category_id}}" class="list-group-item list-group-item-action {% if request.GET.category == 'categories.Category_id' %}active{% endif %}">
{% endfor%}

Вы должны переместить ваш блок if перед отображением тега a, добавить класс active только тогда, когда ваше условие if выполняется, как это:

{% for categories in category_list %}
 
   {% if request.GET.category == 'categories.Category_id' %}
<a href="{% url 'training' %}?category={{categories.Category_id}}" class="list-group-item list-group-item-action active">
  
  {% else %}
  <a href="{% url 'training' %}?category={{categories.Category_id}}" class="list-group-item list-group-item-action ">
 {% endif %}

{% endfor%}

Просто проверьте условие, действительно ли оно выбирает нужный вам случай или нет.

Вернуться на верх