for循环 {% for person in person_list %} p{{ person.name }}/p !--凡是变量都要用两个大括号括起来--{% endfor %}#遍历字典{% for key,val in dic.items %} p{{ key }}:{{ val }}/p{% endfor %}#循环序号可以通过{{forloo
for循环
{% for person in person_list %} <p>{{ person.name }}</p> <!--凡是变量都要用两个大括号括起来--> {% endfor %} #遍历字典 {% for key,val in dic.items %} <p>{{ key }}:{{ val }}</p> {% endfor %} #循环序号可以通过{{forloop}}显示,必须在循环内部用 forloop.counter 当前循环的索引值(从1开始),forloop是循环器,通过点来使用功能 forloop.counter0 当前循环的索引值(从0开始) forloop.revcounter 当前循环的倒序索引值(从1开始) forloop.revcounter0 当前循环的倒序索引值(从0开始) forloop.first 当前循环是不是第一次循环(布尔值) forloop.last 当前循环是不是最后一次循环(布尔值) forloop.parentloop 本层循环的外层循环的对象,再通过上面的几个属性来显示(获取)外层循环的计数等 #示例: {% for k,v in d1.items %} <li>{{ forloop.counter }}-- {{ forloop.parentloop.counter }} === {{ k }} -- {{ v }}</li> {% endfor %} #******************************************* #for 标签带有一个可选的{% empty %} 从句,以便在给出的数据是空的或者没有被找到时,就执行empty从句。 {% for person in person_list %} <p>{{ person.name }}</p> {% empty %} <p>sorry,no person here</p> {% endfor %}
if判断
#{% if %}会对一个变量求值,如果它的值是“True”(存在、不为空、且不是boolean类型的false值),满足那个条件就执行那个条件 {% if num > 100 or num < 0 %} <p>无效</p> <!--不满足条件,不会生成这个标签--> {% elif num > 80 and num < 100 %} <p>优秀</p> {% else %} <!--也是在if标签结构里面的--> <p>凑活吧</p> {% endif %} #if语句支持 and 、or、==、>、<、!=、<=、>=、in、not in、is、is not判断,注意条件两边都有空格。
with
#使用一个简单地名字缓存一个复杂的变量,多用于给一个复杂的变量起别名 #方式一: {% with total=business.employees.count %} {{ total }} <!--只能在with语句体内用--> {% endwith %} #方式er: {% with business.employees.count as total %} {{ total }} {% endwith %}