模板系统基础
作用是把文档的表现与数据区分开
使用一些占位符和基本的逻辑
还有模板标签
可以生成任何基于文本的格式
模板系统只是为了呈现
不是程序的逻辑
{{name}} #占位符
{% if value %} #模板标签
DTL Django Template Language
还支持Jinja2
- 提供原始的模板代码,创建Template 对象
- 调用render()方法,传入 变量
- 返回的是渲染模板后得到的字符串
from django import template
t = template.Template('my name is {{name}}') # 创建模板对象
c = template.Context({'name':'xiao ming'}) #渲染模板
print(t.render(c)) #传入参数
block tag 指的是{% notatag %}
TemplateSyntaxError
无效的标签
有效标签的无效参数
无效过滤器
有效过滤器无效参数
无效模板语法
没有关闭标签
使用python manage.py shell 启动解释器之前告诉使用那个设置文件
字典和上下文
context 对象类似于字典
模板标签
{% if %}
#显示内容
{% elif %}
{% endif %}
#标签中使用括号是无效的语法
{% include %}
过滤器
列表中的第一个元素大写
{{ my_list|first|upper }}
{# 单行注释 #}
{% comment %}
多行注释
多行注释
多行注释
{% endcomment %}