9.自定義過濾器

 

自定義過濾器

  1. 首先在某個app中,建立一個python包,叫作templatetags.注意,這個包的名字必須是templatetags,否則就找不到
  2. 在這個templatetags包下面,建立一個python文件用來存儲過濾器.
  3. 在新建的python文件中,定義過濾器(也就是函數),這個函數的第一個參數永遠是被過濾的那個值,而且若是在使用過濾器的時候傳遞參數,那麼還能夠定義另一個參數.可是過濾器最多隻能有2個參數.示例代碼以下:javascript

    def add_s(value,word=None):
        return value+word
  4. 在寫完過濾器(函數)後,要使用django.template.Library.filter進行註冊,filter有兩種註冊方式.示例代碼以下:html

    方式一
    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. 終於完成了,就能夠使用自定義過濾器了.
相關文章
相關標籤/搜索