这段代码不起作用!我想显示一个红色图像,然后显示一个蓝色图像。如果我有 5 个对象,列表应该是:红蓝红蓝红红。
我想用 2 种颜色来做这件事。我尝试了以下代码:
{% extends './base.html' %}
{% block content %}
{% for object in object_list %}
{% if forloop.counter0 % 2 ==0 }
<img src="img/red.jpg">
<p> {{object.title}} </p>
{% else %}
<img src="img/blue.jpg">
<p> {{object.title}} </p>
{% endif %}
{% endfor %}
{% endblock content %}
您不能在模板中使用%
。Django 有一个divisibleby
过滤器,你可以使用。
但是,最好使用cycle
标记:
{% for object in object_list %}
<img src="{% cycle 'image/red.jpg' 'image/blue.jpg' %}">
<p>{{object.title}}</p>
{% endfor %}
Django 模板没有模数 %,它们使用divisibleby:2
所以你的代码将是这样的:
{% if forloop.counter0|divisibleby:2 %}