tags标签
使用Django中的标签可以在模板中做一些简单的逻辑判断。
标签和{%%}配合使用。
for标签
格式:{%for 临时遍历 in 序列%} … {%endfor%}
<ul>
{% for game in lst %}
<li>
{{ game }}
</li>
{% endfor %}
</ul>
(2) .for…empty标签
如果变量名不存在或者内容为空的时候显示{%empty%}中的内容,否则不执行。
格式:
{% for game in games %}
…
{% empty %}
…
{% endfor %}
<ul>
{% for game in games %}
<li>
{{ game }}
</li>
{% empty %}
<li>毛线都没有...</li>
{% endfor %}
</ul>
def for_empty_tag(request):
games = ['王者荣耀', '穿越火线', '英雄联盟', '吃鸡']
# games = []
return render(request, '02-标签.html', {'games': games})
url(r'^for_empty_tag/', views.for_empty_tag), # for_empty_tag 标签
(3) .if 标签
格式:
{% if 判断条件 %}
…
{% endif %}
注: if 语句支持 and、or、==、<、>、!=、<=,>=,in、not in、is、is not判断。
{% if name_length|length > 4 %}
{{ name_length }}
{% endif %}
def if_tag(request):
return render(request, '02-标签.html', {'name_length': 'jerry'})
url(r'^if_tag/', views.if_tag), # if_tag 标签
(5) .if…elif…else 标签
格式:
{% if name_length|length > 6 %}
…
{% elif age == 20 %}
…
{% else %}
…
{% endif %}
{% if name_length|length > 6 %}
{{ name_length }}
{% elif age == 20 %}
{{ age }}
{% else %}
什么都不满足...
{% endif %}
def if_elif_else_tag(request):
return render(request, '02-标签.html', {'name_length': 'jerry', 'age': 20})
url(r'^if_elif_else_tag/', views.if_elif_else_tag),