标签和过滤器
Posted whnbky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了标签和过滤器相关的知识,希望对你有一定的参考价值。
- 创建自定义的标签和过滤器的步骤
-
- 在app下创建Python Package并且要命名为templatetags
-
在templatetags下创建py文件,例如my_tags.py
- my_tags.py
1234567891011121314151617181920
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,并使用自定义标签和自定义过滤器
1234
{% 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,并使用自定义标签和自定义过滤器
-
-
以上是关于标签和过滤器的主要内容,如果未能解决你的问题,请参考以下文章
Wagtail - 在页面上呈现带有相关片段和标签的数据时遇到问题