标签
- 标签语法:
{% 代码段 %}
常用标签
- for循环标签
{% for item in 列表 %}
执行循环逻辑
{{ forloop.counter }}获取当前是第几次循环,从1开始
{% empty %}
列表为空或不存在时执行此逻辑
{% endfor %}
- if标签
{% if ... %}
逻辑1
{% elif ... %}
逻辑2
{% else %}
逻辑3
{% endif %}
比较运算符标签
- 注意:运算符左右两侧不能紧挨变量或常量
运算符左右两侧必须有空格
== != < > <= >=
布尔运算符标签
and or not
标签演练
需求
以下为需求实现步骤
正则匹配urls
# 标签 url(r'^tags/$', views.tags),
视图
# 标签 def tags(request): # 获取数据库书籍列表信息 bookInfos = BookInfo.objects.all() # 构造上下文 context = {'booklist':bookInfos} return render(request, 'Book/tags.html', context)
- 模板
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>标签</title>
</head>
<body>
<ul>
{% for book in booklist %}
{% if book.id <= 2 %}
<li style="background: red">{{ book.name }}</li>
{% elif book.id == 3 %}
<li style="background: green">{{ book.name }}</li>
{% else %}
<li style="background: blue">{{ book.name }}</li>
{% endif %}
{% endfor %}
</ul>
</body>
</html>