Django入門教程 五 自定義模板標籤和過濾器

2021-08-29 07:12:13 字數 1941 閱讀 6013

3、編寫路由

在urls.py檔案中編寫路由。

4、編寫業務邏輯,即檢視函式。

5、如何自定義django模板語言的標籤和過濾器:

6、在自定義的customtags.py檔案下,編寫乙個進行字串切片的過濾器。

from django import template

#1、先建立乙個過濾器註冊器,用於註冊自定義的過濾器

register=template.library()

#2、可以自定義過濾器,只需要攜帶這個裝飾器@register,就可以實現註冊了。

@register.filter

def filter_chars(value):

'''該過濾器可以實現對字串的切片功能。

:param value: 這個值是檢視函式給模板傳遞的原始資料。

:return:就是處理之後的資料。

7、此時回到模板檔案中引入我們自定義的過濾器

要載入自定義過濾器,需要使用django內建標籤load,載入自定義的過濾器函式。

重新整理檢視

第二部分

自定義標籤

1、自定義標籤需要使用到@register.******_tag這個裝飾器。現在我們在customtags.py檔案中寫到:

2、再去index.html中寫入如下**:

autoescape標籤使用 on 或 off開關來控制塊中自動轉義的行為,當自動轉義生效時,所有變數內容會被轉義成html輸出。此時我們將其自動轉義的功能關閉。與過濾器safe的作用類似,該過濾器使得輸出不進行轉換。此時重新整理檢視:

3、注意

過濾器 |,只能用於變數}的後面,不能用於標籤的後面,而html_tag就是乙個自定義的標籤。所以,html_tag後面不能使用過濾器。

如這種用法是錯誤的。

Django 五 自定義過濾器

新建資料夾common,在common資料夾下建 init py檔案。在common資料夾下新建資料夾templatetags,在templatetags資料夾下新建 init py檔案。在templatetags下新建self defined.py檔案 from django import tem...

自定義控制項 五 自定義Title

雖然說google自己有actionbar,還有 但是絕大部分的時候我們還是需要自定義統一樣式的titlebar。那麼讓我們一起來探索怎麼定義乙個萬能的titlebar吧!1 我們先把titlebar 分為三個部分,左邊,中間,右邊 右邊也許有2個按鈕 並且右邊和左邊有可能是字,也有可能是 2 那麼...

Vue 五 自定義指令

vue允許使用者自定義指令,來對dom元素進行底層操作。自定義指令分為 全域性自定義指令和區域性自定義指令。註冊乙個全域性自定義指令 focus 獲取焦點 vue.directive focus let vm newvue msg msg msg my comp update 更新 button u...