日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

django-5-自定义模板过滤器及标签

發布時間:2025/3/20 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 django-5-自定义模板过滤器及标签 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<<<代碼布局(自定義的代碼放哪里)>>>
?(1)某個app特有的
  ?1.一般放app目錄下 固定名為templatetags 的python文件夾里鴨,如果是別的名稱,django是找不到的哦!
?  2.再在文件夾里面寫模塊
?(2)創建新的app,在里面加模塊(**注意要注冊app鴨!!!**) <<<自定義模板過濾器>>>
?首先創建模塊,模塊名固定為 customer_filters.py,如果是別的名字,運行會報錯哦!!
?(1)模板過濾器(其實就是函數啦!)
?  1.有一個或兩個參數
??  第一個參數是 模板變量
??  第二個參數是普通參數,也可以不要 ?(2)注冊
?  1.通過django.template.Library 它的實例的filter方法
?    filter有兩個參數
?  ?  name: 過濾器的名稱,是一個字符串(如果不寫name,函數名就是默認的filter名字哦!)
??    filter_func:函數名 register = Library()
?     register.filter(<function>) ?  2.通過裝飾器 from django.template import Libraryregister = Library()@register.filter() def myfilter(value): ...

  

在模板中使用
?     <<<自定義模板標簽>>>
?(1)簡單標簽(本質也是函數):
?  django.template.Library.simple_tag() ?(2)創建:
?  1.創建python模塊,模塊名固定為customer_tags.py,如果不是這個名字,也是會報錯,真jer挑剔!!
?  2.注冊
?    @filter.simple_tag(name=<function>) from django.template import Libraryregister = Library()@register.simple_tag() def tag(): ...

  


??**如果要拿到視圖函數里面的context,則自定義標簽函數的第一個參數是context
???其次讓simple_tag函數中的take_context=True
??** ?(3)使用:同樣也要load ?(4)inclusion標簽:
?  通過渲染另一個模板來展示數據
?  這里用inclusion_tag(‘模板的路徑’)來裝飾 **這個標簽也可以拿到context,方法和simple_tag 一樣**

轉載于:https://www.cnblogs.com/wmkpy/p/10419587.html

總結

以上是生活随笔為你收集整理的django-5-自定义模板过滤器及标签的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。