- 创建自定义的标签和过滤器的步骤
-
- 在app下创建Python Package并且要命名为templatetags
- 在templatetags下创建py文件,例如my_tags.py
- my_tags.py
12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from
django
import
template
from
django.utils.safestring
import
mark_safe
#register的名字是固定的,不可改变
register
=
template.Library()
#自定义标签
@register
.simple_tag
def
simple_tag_add(v1, v2):
return
v1
+
v2
#自定义过滤器
@register
.
filter
def
filter_multi(v1, v2):
return
v1
*
v2
@register
.simple_tag
def
my_input(
id
, arg):
result
=
"<input type=‘button‘ name=‘%s‘ style=‘%s‘ />"
%
(name, arg,)
return
mark_safe(result)
-
-
-
-
- 在html页面导入my_tags.py,并使用自定义标签和自定义过滤器
12
3
4
{% load tags %}
{% simple_tag_add 100 200 %}
{{ 10|filter_multi:2 }}
{% my_input "my_input" " font-family: verdana, "ms song", 宋体, Arial, 微软雅黑, Helvetica, sans-serif; font-size: 12px;">
-
- 注意:
- 自定义标签不可以用在{% if %} {% endif %} {% for %} {% endfor %} 语句中
- 自定义过滤器可以
-
{% if 10|filter_multi:30 > 100 %} {{ 10|filter_multi:30 }} {% endif %}
-
- 注意:
-
- 在html页面导入my_tags.py,并使用自定义标签和自定义过滤器
-
-
原文地址:https://www.cnblogs.com/whnbky/p/11729782.html
时间: 2024-11-10 01:00:49