就象本章前面提到的一樣,模板過濾器是在變量被顯示前修改它的值的一個簡單方法。 過濾器使用管道字符,如下所示:
1
|
{{ name|lower }} |
顯示的內容是變量 {{ name }} 被過濾器 lower 處理后的結果,它功能是轉換文本為小寫。
過濾管道可以被* 套接* ,既是說,一個過濾器管道的輸出又可以作為下一個管道的輸入,如此下去。 下面的例子實現查找列表的第一個元素并將其轉化為大寫。
1
|
{{ my_list|first|upper }} |
有些過濾器有參數。 過濾器的參數跟隨冒號之后并且總是以雙引號包含。 例如:
1
|
{{ bio|truncatewords: "30" }} |
這個將顯示變量 bio 的前30個詞。
以下幾個是最為重要的過濾器的一部分。 附錄F包含其余的過濾器。
addslashes : 添加反斜杠到任何反斜杠、單引號或者雙引號前面。 這在處理包含JavaScript的文本時是非常有用的。
date : 按指定的格式字符串參數格式化 date 或者 datetime 對象, 范例:
1
|
{{ pub_date|date: "F j, Y" }} |
格式參數的定義在附錄F中。
length : 返回變量的長度。 對于列表,這個參數將返回列表元素的個數。 對于字符串,這個參數將返回字符串中字符的個數。 你可以對列表或者字符串,或者任何知道怎么測定長度的Python 對象使用這個方法(也就是說,有 __len__() 方法的對象)。