當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Django Library.filter用法及代碼示例


本文介紹 django.template.Library.filter 的用法。

聲明

django.template.Library.filter()

編寫過濾器定義後,需要將其注冊到 Library 實例中,以使其可用於 Django 的模板語言:

register.filter('cut', cut)
register.filter('lower', lower)

Library.filter() 方法有兩個參數:

  1. 過濾器的名稱 - 一個字符串。
  2. 編譯函數 - Python 函數(不是字符串形式的函數名稱)。

您可以使用 register.filter() 作為裝飾器:

@register.filter(name='cut')
def cut(value, arg):
    return value.replace(arg, '')

@register.filter
def lower(value):
    return value.lower()

如果你不使用 name 參數,如上麵的第二個示例,Django 將使用函數的名稱作為過濾器名稱。

最後,register.filter() 還接受三個關鍵字參數 is_safeneeds_autoescapeexpects_localtime 。這些參數在下麵的過濾器和auto-escaping 以及過濾器和時區中進行了說明。

相關用法


注:本文由純淨天空篩選整理自djangoproject.com大神的英文原創作品 django.template.Library.filter。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。