Django学习记录6-模板
1.变量
变量语法
{{ var }}
- 当模版引擎遇到一个变量,将计算这个变量,然后将结果输出
- 变量名必须由字母、数字、下划线(不能以下划线开头)和点组成
- 当模版引擎遇到点("."),会按照下列顺序查询:
- 字典查询,例如:foo["bar"]
- 属性或方法查询,例如:foo.bar
- 数字索引查询,例如:foo[bar]
- 如果变量不存在, 模版系统将插入'' (空字符串)
- 在模板中调用方法时不能传递参数
2.标签
语法
{% tag %}
- 在输出中创建文本
- 控制循环或逻辑
- 加载外部信息到模板中
for标签
{% for ... in ... %}
循环逻辑
{% endfor %}
if标签
{% if ... %}
逻辑1
{% elif ... %}
逻辑2
{% else %}
逻辑3
{% endif %}
多行注释
{% comment %}
多行注释
{% endcomment %}
#注释后的代码不会在前端不能查看到源代码
单行注释
{# 注释 #}
include:加载模板并以标签内参数渲染
{ % include "base/index.html" % }
url:反向解析
{ % url 'name' p1 p2 % }
csrf_token:这个标签用于跨站请求伪造保护
{ % csrf_token % }
<body>
<h2><a href="{% url 'index' %}">返回首页</a></h1>
<h2>模板</h2>
<ul>
<li>{{ name }}</li>
<li>{{ stu.name }}</li>
<li>{{ a.0 }}</li>
# 列表字典都用(".")索引
<li>{{ dlist.0 }}</li>
</ul>
<h3>
表格
</h3>
<table width="500" border="1">
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
<th>身份</th>
</tr>
{% for i in dlist %}
<tr>
<td>{{ i.name }}</td>
<td>{% if i.sex == 0 %}女{%else%}男{%endif%}</td>
<td>{{ i.age }}</td>
<td>{%if i.state == 0%}掌门{%else%}虾米{%endif%}</td>
</tr>
{% endfor %}
</table>
</body>

浙公网安备 33010602011771号