from django import template
from django.utils.safestring import mark_safe
register = template.library() #register的名字是固定的,不可改變
@register.filter(name="myfilter")
#指定了name之後,模板上使用的時候,直接用name呼叫,如果沒指定name,就用函式的名字
# 過濾器最多有兩個引數
def filter_multi(v1,v2):
return v1 * v2
@register.******_tag
def ******_tag_multi(v1,v2):
return v1 * v2
@register.******_tag
def my_input(id,arg):
result = "" %(id,arg,)
return mark_safe(result)
4、在使用自定義******_tag和filter的html檔案中匯入之前建立的 my_tags.py
5、使用******_tag和filter(如何呼叫)
-------------------------------.html
# num=12
} #24 }
引數不限,但不能放在if for語句中
標籤和過濾器的區別:
1 標籤可以傳多個引數,過濾器最多只能傳2個
2 使用過濾器} 標籤使用:
3 ****重點:過濾器可以放在if判斷後,標籤不能放在if判斷後
django 自定義標籤和過濾器
django支援自定義標籤和過濾器。起初還不太重視它這項功能,但最近試了試自定義標籤。發現django這個功能實在是太爽了。再如果是在templatetags資料夾中定義了標籤,如 test tags.py,要如何使用我們自定義的test tags.py呢。很簡單,只要在django的模板中加入,在...
Django自定義過濾器和標籤
django的模板語言包含了各種各樣的內建標籤和過濾器來滿足你的應用需求,不過有時候你也會發現你的需要的功能不在內建的功能中,這時候你可以通過python語言自定義標籤和過濾器來擴充套件模板引擎,然後在你的模板中使用來載入使用它們。首先建立好包檔案 init py templatetags init...
Django自定義過濾器和自定義標籤
3 在模板下建立任意名稱的.py檔案 4 在剛剛建立的.py檔案中定製過濾器 from django.template import library register library register.filter name rule 最多包含兩個引數 defrule value,before 將b...