手册
目录
for 循环用于遍历序列,例如遍历数组、列表或字典中的项目。
遍历列表中的项目:
{% for x in fruits %}
{{ x }}
{% endfor %}
运行实例 »
遍历字典列表:
{% for x in cars %}
{{ x.brand }}
{{ x.model }}
{{ x.year }}
{% endfor %}
运行实例 »
模型中的数据就像一个有行和列的表格。
我们之前创建的 Members 模型有五行,每行有三列:
| id | firstname | lastname |
|---|---|---|
| 1 | Emil | Refsnes |
| 2 | Tobias | Refsnes |
| 3 | Linus | Refsnes |
| 4 | Lene | Refsnes |
| 5 | Stalikken | Refsnes |
当我们从模型中获取数据时,它以 QuerySet 对象的形式出现,格式与上面的 cars 示例类似:带有字典的列表:
遍历从数据库中获取的项目:
{% for x in members %}
{{ x.id }}
{{ x.firstname }}
{{ x.lastname }}
{% endfor %}
运行实例 »
reversed 关键字用于当您想以相反的顺序执行循环时。
{% for x in members reversed %}
{{ x.id }}
{{ x.firstname }}
{{ x.lastname }}
{% endfor %}
运行实例 »
empty 关键字可以用来在对象为空的情况下做一些特殊的事情。
{% for x in emptytestobject %}
- {{ x.firstname }}
{% empty %}
- No members
{% endfor %}
运行实例 »
如果对象不存在,也可以使用empty关键字:
{% for x in myobject %}
- {{ x.firstname }}
{% empty %}
- No members
{% endfor %}
运行实例 »
Django 在循环中有一些变量可供您使用:
当前迭代,从 1 开始。
{% for x in fruits %}
- {{ forloop.counter }}
{% endfor %}
运行实例 »
当前迭代,从 0 开始。
{% for x in fruits %}
- {{ forloop.counter0 }}
{% endfor %}
运行实例 »
允许您测试循环是否处于第一次迭代中。
为循环的第一次迭代画一个蓝色背景:
{% for x in fruits %}
- {{ x }}
{% endfor %}
运行实例 »
允许您测试循环是否处于最后一次迭代。
为循环的最后一次迭代画一个蓝色背景:
{% for x in fruits %}
- {{ x }}
{% endfor %}
运行实例 »
如果从末尾开始倒数,则为当前迭代,以 1 结束。
{% for x in fruits %}
- {{ forloop.revcounter }}
{% endfor %}
运行实例 »
如果从末尾开始倒数,则为当前迭代,以 0 结束。
{% for x in fruits %}
- {{ forloop.revcounter0 }}
{% endfor %}
运行实例 »
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
70.9万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习