重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
怎么在Django中自定义一个过滤器?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联是专业的泽普网站建设公司,泽普接单;提供网站设计、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行泽普网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!Django中自定义过滤器有两种方式
1、在组件(App)中的templatetags
创建一个单独的py文件
2、单独创建一个组件(App)用来存放项目中所有的自定义过滤器
三、在项目中的组件中创建自定义过滤器
1、只能在安装的组件(App
)中
2、只能在组件(App)下的templatetags
包内创建
3、必须使用修饰器@register.filter
4、定义一个方法,传递值进去进行处理,返回新的值
5、创建自定义过滤器
①. 在templatetags包下创建一个poll.py的文件
from django import template register = template.Library() @register.filter def mycut(value,args): return value.replace(args,"")
6、 使用自定义过滤器
①. 先引入文件{% load poll %}
②. 使用
{% load poll %}Title {{ msg | mycut:' '}}
四、可以自定义一个组件(App
)[由于不需要太多的文件,就手动创建一个]
1、手动创建一个包
2、在包中创建一个templatetags
的包
3、将创建的这个包在settings.py
中注入
4、在templatetags
中创建文件及函数
5、过滤器的使用(跟上面一样的)
五、补充说明
如果是对字符串操作的一般都会引入@stringfilter
修饰符
from django import template from django.template.defaultfilters import stringfilter register = template.Library() @register.filter def mycut(value,args): return value.replace(args,"") @register.filter @stringfilter def mylower(value): return value.lower()
关于怎么在Django中自定义一个过滤器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。