django里面的html模板语言
一、模板语言
DTL.(Django Template Language)简称: 模板语言
1、模板变量
格式:{{变量名}}
变量名由数字,字母,下划线组成,不能以下划线开头
. 用于访问变量里面的属性
如:
{{chen.name}}:将chen当成一个对象,把name当成属性或方法,信息取值
如在列表取值:
{{chen.0}}:相当于取值列表chen[0]值
2、模板标签
格式:{%代码段%}
(1)for循环
列表:
{%for i in 列表%}
执行内容
{%endfor%}
倒序:
{%for i in 列表 reversed %}
{%endfor%}
字典:
{% for key,value in my_dict.items %}
{{key}}:{{value}}
{%endor%}
可以通过 {{ forloop.counter }}
判断for循环执行到第几次,初始化值从1开始。
(2) if 语句
{% if 条件 %}
{% elif 条件 %}
{% else %}
{%endif%}
关系比较操作符:
< > >= <= == != (进行比较时,操作符两边必须是空格)
not and or
3、模板页面继承导入(extends,block endblock )
(1)先编写需要继承的模板
(2)进行继承
4、 相同小组件的模板应用(include)
5、自定义函数
在html模板中使用
第一种:(simple_tag)(可以传多个参数)
创建:
(1)在某个app里面创建templatetags目录
(2)在templatetags中创建任意py文件
(3)创建一个template对象register
(4)写函数,并装饰
(5)在settings注册app
(6)在html中的文件顶部load py文件
{% load test %}
(7)模板应用
{% addd 2 9 %}
第二种:filter(适合最多传两个参数,但是可以放在if后面进行判断,第一种不可以)
步骤一致,装饰方法不一样:
使用:
{{ 2|add2:9 }}