新建資料夾common,在common資料夾下建__init__.py檔案。在common資料夾下新建資料夾templatetags,在templatetags資料夾下新建__init__.py檔案。
在templatetags下新建self_defined.py檔案
from django import template
register = template.library()
@register.filter
def mylower(attr):
return attr.lower()
在html檔案開頭載入函式檔案
}
from django import template
from datetime import datetime
register = template.library()
@register.******_tag(takes_context=true)
def current_time(context):
str1 = context.get('ts')
return datetime.now().strftime(str1)
檢視函式
ts = '%y-%m-%d %h:%m:%s %a'
def test(request):
return render(request,'blog/test.html',
context=)
html檔案中呼叫
from django import template
from datetime import datetime
register = template.library()
@register.******_tagtr
def current_time(attr):
return datetime.now().strftime(attr)
檢視函式
ts = '%y-%m-%d %h:%m:%s %a'
def test(request):
return render(request,'blog/test.html',
context=)
html檔案中呼叫
當html頁面中存在大量格式類似但內容不同的標籤組時,可以使用包含標籤代替
新建tags.html檔案
@register.inclusion_tag('tag.html')
def show(attr):
return
def test(request):
return render(request,'blog/test.html',
context=)
開頭
@register.inclusion_tag('tag.html',takes_context=true)
def show(context):
attr = context.get(『xx』)
return
頁面中
開頭
Django自定義過濾器
django中提供了很多的過濾器和標籤,具體可見django官網,例如 upper 化為大寫字母 lower 化為小寫字母 autoescape 自動轉義 block 模板繼承 csrf token 防止跨站偽造請求 extends 模板繼承 filter 過濾器 等 內建的過濾器雖然好用,但是我們...
Django自定義過濾器
為什麼要自定義過濾器?django中雖然已經內建了很多過濾器,但是並不能滿足我們的日常開發,所以我們需要自定義過濾器。在一切配置好了之後,然後在article中新建乙個名為templatetags的package。注意 必須是乙個包,並且包的名字也必須為templatetags package和資料...
django 自定義過濾器
然後在extratags.py檔案中新增自定義的過濾器 from django import template register template.library register.filter name cut 過濾器在模板中使用時的name def mycut value,arg 把傳遞過來的引...