Добавьте html-код, если элемент является первым в запросе - Django
В слайдере Bootstrap первый элемент имеет значение "active", как проверить и добавить это значение в html код для кверисета, если элемент первый.
Пример (который не работает):
{% for obj in query %}
<div class="carousel-item {% if query|first %}active{% endif %}">
[...]
</div>
{% endfor %}
*это дает активность для всех элементов, а не только для первого. Ожидаемый результат - только для первого.
Вы можете работать с forloop.first
[Django-doc] для проверки, является ли это первым элементом, так:
{% for obj in query %}
<div class="carousel-item{% if forloop.first %} active{% endif %}">
[...]
</div>
{% endfor %}
В результате forloop.first
будет возвращено:
True
если цикл выполняется впервые
Вы можете использовать forloop.counter
следующим образом:
{% for obj in query %}
<div class="carousel-item {% if forloop.counter == 1 %} active {% endif %}">
[...]
</div>
{% endfor %}
forloop.counter - это 1 индексный счетчик, используемый для хранения текущего индекса цикла.