过滤器主要是对上下文的内容进行操作处理。在实际开发中,如果内置过滤器的功能不太适合开发需求,我们可以自定义过滤器来解决问题。
下面本人就Django自定义过滤器的步骤与大家分享一下:
-
在Django应用目录下创建——templatetags 包;(注意:该包的名字不能写错)
-
创建一个py文件,文件名自定义(例:mytags.py);
-
在py文件开头写入(这是固定格式,不能写错):
from django.template import Library register = Library()
-
写函数 + 加装饰器,(例)
@register.filter def add_arg(value, arg): # 功能 return "{}-{}".format(value, arg)
-
在模板中导入:
{% load mytags %}
-
重启项目,否则报错;
最后在模板中使用咱们自定义的过滤器:
{{ ni | add_arg:"hao" }}
输出:
ni-hao
其实不难,希望以上内容能够帮助到各位。