simple_tag与filter的用法
1.支持自定义函数处理方法
2.支持模板调用
创建步骤:
a.在app目录下创建templatetags文件夹
b.在templatetags中创建任意名称.py文件,example:xxoo.py
c.导入模块
from django import template register = template.Library() @register.simple_tag def add(a1,a2) return a1+a2 @register.filter def delete(a1,a2) return a1-a2 #注意这里的filer = filer(),simple_tag = simple_tag()
d.在setting.py文件中注册该app
e.在html模板中导入模块{%load xxoo%}
注意:如果html模板中有{%exntend 'master.html'%}
{%load xxoo%}
f.调用
{%add 1 2%} 参数之间用空格隔开
{{参数1|deleter:参数2}} 只能放置两个参数
对比:
1.simple_tag:可以放置任意个参数,参数之间用逗号隔开,调用方式{% 函数 para1 para2 %},不能使用if else语句判断
2.filter:只能放置两个参数,调用方式{{para1 | 函数:para2}},可以使用if else 语句判断