詳解Django中的過濾器

來源:互聯網
上載者:User
就象本章前面提到的一樣,模板過濾器是在變數被顯示前修改它的值的一個簡單方法。 過濾器使用管道字元,如下所示:

{{ name|lower }}

顯示的內容是變數 {{ name }} 被過濾器 lower 處理後的結果,它功能是轉換文本為小寫。

過濾管道可以被* 套接* ,既是說,一個過濾器管道的輸出又可以作為下一個管道的輸入,如此下去。 下面的例子實現尋找列表的第一個元素並將其轉化為大寫。

{{ my_list|first|upper }}

有些過濾器有參數。 過濾器的參數跟隨冒號之後並且總是以雙引號包含。 例如:

{{ bio|truncatewords:"30" }}

這個將顯示變數 bio 的前30個詞。

以下幾個是最為重要的過濾器的一部分。 附錄F包含其餘的過濾器。

addslashes : 添加反斜線到任何反斜線、單引號或者雙引號前面。 這在處理包含JavaScript的文本時是非常有用的。

date : 按指定的格式字串參數格式化 date 或者 datetime 對象, 範例:

{{ pub_date|date:"F j, Y" }}

格式參數的定義在附錄F中。

length : 返回變數的長度。 對於列表,這個參數將返回列表元素的個數。 對於字串,這個參數將返回字串中字元的個數。 你可以對列表或者字串,或者任何知道怎麼測定長度的Python 對象使用這個方法(也就是說,有 __len__() 方法的對象)。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.