django 模板自定义函数 simple_filter simple_tag
模版自定义函数
simple_filter:
1、最多两个参数,方式{{第一个参数|函数名:"第二个参数"}}
2、可以做判断条件
simple_tag:(常用)
1、无限制的传参数 {% 函数名 参数 参数 参数 %}
tag 可以加多个参数
filter 只能是一个参数,但是filter可以进行 if 判断
创建模板自定义函数的步骤
1、在app中创建一个 templatetags 的模块
2、创建任意*.py的文件,比如xx.py
from django import template register = template.Library() @register.filter def my_upper(value, arg): return value + arg @register.filter def my_bool(value): return False @register.simple_tag def my_lower(value, a1, a2, a3): return value + a1 + a2 + a3
3、在使用自定义simple_tag的html文件中导入之前创建的 xx.py 文件名
{% load xx %}
4、使用simple_filter和simple_tag
{% load xx %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h2>传参内容name:{{ name }}</h2>
<h2>filte应用</h2>
{{ name|my_upper:'666'}}
<h2>tags应用</h2>
{% my_lower 'ALEX' 'b' 'c' 'd' %}
<h2>filter 可当作判断条件</h2>
{% if name|my_bool %}
<h3>真</h3>
{% else %}
<h3>假</h3>
{% endif %}
{#{% for key in userinfo.values %}#}
{# {{ key }}#}
{#{% endfor %}#}
</body>
</html>
5、在setting.py中注册app01

浙公网安备 33010602011771号