日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發布時間:2025/3/20 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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-自定义模板过滤器及标签的全部內容,希望文章能夠幫你解決所遇到的問題。

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