自己擴充套件django的過濾器

2021-06-27 06:01:47 字數 1101 閱讀 7829

/* myfilter.py*/

#coding=utf-8

from django import template

import time

register = template.library()

@register.filter(name='cut')

def cut(value, arg):

return value.replace(arg, '')

@register.filter

def lower(value):

return value.lower()

@register.filter

def firstpath(value):

maps =

return maps.get(value, "")

@register.filter

def formattime(t):

if not t: return ""

strt = time.strftime("%y-%m-%d %h:%m", time.localtime(t))

return strt

@register.filter

def formatshorttime(t):

if not t: return ""

strt = time.strftime("%y-%m-%d", time.localtime(t))

return strt    

上面是自己擴充套件django的過濾器,新增自己特有的過濾器,主要語法在上面的黑體粗子, 而@register.filter這個標記,則是python的裝飾器。當你在模板中需要用到自己定義的過濾器時,需要在檔案頭不寫上這樣一句話,如下的html檔案:

mytabel.html:

主題名稱/裝置ip

監控專案

工單資訊

工程師       

開始時間

結束時間

緊急程度}}

}}}}

}}

就像上面的紅色粗體字一樣的去使用你的過濾器了

django過濾器大全

1 add 將value的值增加2。使用形式為 2 addslashes 在value中的引號前增加反斜線。使用形式為 3 capfirst value的第乙個字元轉化成大寫形式。使用形式為 4 cut 從給定value中刪除所有arg的值。使用形式為 5 date 格式化時間格式。使用形式為 也可...

Django 過濾器 例項

例項 safe 讓html標籤以及一些特殊符號 如 生效,下面以例子說明 value cpt 那麼輸出的時候,cpt就是加粗的,如果不加safe那麼顯示出來的就是純文字cpt striptags 取消所有html標籤,下面以例子說明 value cpt 那麼輸出的時候,只有cpt且沒有加粗沒有段落 ...

Django過濾器的使用

django模板 django採用的是mvc模式,最後從資料庫取出來的資料會經過view檢視渲染到template模板上,在模板上載入資料使用的是模板語言。在模版中,有時候需要對一些資料進行處理以後才能使用。一般在 python 中我們是通過函式的形 式來完成的。而在模版中,則是通過過濾器來實現的。...