9.自定义过滤器

自定义过滤器

  1. 首先在某个app中,创建一个python包,叫做templatetags.注意,这个包的名字必须是templatetags,不然就找不到
  2. 在这个templatetags包下面,创建一个python文件用来存储过滤器.
  3. 在新建的python文件中,定义过滤器(也就是函数),这个函数的第一个参数永远是被过滤的那个值,并且如果在使用过滤器的时候传递参数,那么还可以定义另外一个参数.但是过滤器最多只能有2个参数.示例代码如下:

    def add_s(value,word=None):
        return value+word
    
  4. 在写完过滤器(函数)后,要使用django.template.Library.filter进行注册,filter有两种注册方式.示例代码如下:

    方式一
    from django import template
    register = template.Library()
    register.filter('add_s',add_s)
    
    方式二
    @register.filter
    def add_s(value,word=None):
        return value+word
    
  5. 还要把这个过滤器所在的这个app添加到settings.INSTALLED_APPS中,不然Django也找不到这个过滤器.
  6. 在模板中使用{% load %}标签加载过滤器所在的python包.
    {% load my_filter %}
  7. 终于完成了,就可以使用自定义过滤器了.

猜你喜欢

转载自www.cnblogs.com/ys-python/p/11256222.html