django自定义过滤器及模板标签
生活随笔
收集整理的這篇文章主要介紹了
django自定义过滤器及模板标签
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
django自定義過濾器及模板標簽
文件路徑配置:
-
某個app特有的
-app 目錄下,新建templatetags 文件夾
-再到 templatetags 文件夾下創建python模塊(py文件) -
注冊
1. 通過django.template.Library 它的實例的 filter 方法
filter 有兩個參數:- name 過濾器的名稱,是個字符串,可以不寫,默認
使用方法名作為過濾器的名稱 - filter_func 定義的過濾器的函數
- name 過濾器的名稱,是個字符串,可以不寫,默認
通過裝飾器
@register.filter
模板中使用
先要load一下,通過python模塊名
注意:templatetags這個目錄名字是固定的,而里面的模塊名是自定義的.
django.template.Library.filter()1 .Library.filter()方法需要兩個參數:過濾器的名稱(一個字符串對象)編譯的函數 – 一個Python函數(不要把函數名寫成字符串) 2. 可以把register.filter()用作裝飾器; 3. 沒有聲明 name 參數,Django將使用函數名作為過濾器的名字。現在需要把性別1變為男。0對應女
這就應該寫自定義過濾器
自定義模板標簽
自定義簡單標簽
如何將自定義簡單標簽引入上下文
引用上下文變量(views中render傳遞到模板中的那個context)
只需要在simple_tag 中,設置參數take_context=True
自定義的標簽函數的第一個參數一定是 context
自定義包含標簽的例子
總結
以上是生活随笔為你收集整理的django自定义过滤器及模板标签的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何让小龙虾补钙?
- 下一篇: 板烧凤梨中国汉堡热量