django开发系列:自定义过滤器
自定义过滤器:
- 首先在某个app中,创建一个python包,叫做
templatetags
,注意,这个包的名字必须为templatetags
,不然就找不到。 - 在这个
templatetags
包下面,创建一个python文件用来存储过滤器。 - 在新建的python文件中,定义过滤器(也就是函数),这个函数的第一个参数永远是被过滤的那个值,并且如果在使用过滤器的时候传递参数,那么还可以定义另外一个参数。但是过滤器最多只能有2个参数。
- 在写完过滤器(函数)后,要使用
django.template.Library.filter
进行注册。 - 还要把这个过滤器所在的这个app添加到
settings.INSTALLED_APS
中,不然Django也找不到这个过滤器。 - 在模板中使用
load
标签加载过滤器所在的python包。 - 可以使用过滤器了。
django.template.Library.filter
还可以当作装饰器来使用。如果filter
函数没有传递任何参数,那么将会使用这个函数的名字来作为过滤器的名字。当然如果你不想使用函数的名字来作为过滤器的名字,也可以传递一个name
参数。示例代码如下:
from django