10 jinja2模板過濾器

2022-05-02 22:51:12 字數 1935 閱讀 6429

目錄default: 有則使用傳的,沒則使用預設值

使用方式:}, 如果value這個key不存在,則會使用default過濾器提供的預設值。如果你想使用類似於python中判斷乙個值是否為false (例如:none, 空字串,空列表,空字典等), 那麼就必須要傳遞另外乙個引數}, 可以使用or來替代default('預設值', boolean=true)

}

}}

abs(value): 返回乙個數值的絕對值。如: -1|abs

關於轉義:

safe過濾器: 可以關閉乙個字串的自動轉義, 禁用轉義

escape過濾器: 對某乙個字串進行轉義

autoescape標籤: 可以對他裡面的**塊關閉或開啟自動轉義

...**塊

first: 返回乙個序列的第乙個元素. 如: names|first

last: 返回最後乙個值。 如: names|last.

format: 格式化字串

}
length: 返回乙個序列型別的長度, 如: names|length

join: 將乙個序列,用指定的引數拼接成字串

# 後台:

def index():

context =

return render_template('index.html', **context)

# 前台

}# 結果:

ceng/yan/cheng/long/dong/zhu

int: 將值轉換為 int 型別

10,float: 將值轉換為 float 型別

lower: 將字串轉換為小寫

upper: 將字串轉換為大寫

string: 將變數轉換為字串

replace: 替換字串

# 將字串中所有的 hello 替換成 hi

}

truncate: 擷取指定長度的字串

}
striptags: 刪除字串中所有的html標籤,如果出現多個空格,將替換成乙個空格

trle: 擷取字串前面和後面的空白字元

wordcount: 計算乙個長字串中單詞的個數

}
title: 把值中的第個單詞的首頁字母變成大寫

capitalize: 把變數值的首字母轉成大寫,其餘字母轉小寫

capitalize過濾器的使用結果: }

結果為:

capitalize過濾器的使用結果: capitalize hello hhhh aaaa

trim: 把值的首尾空格去掉

reverse: 字串的反轉

}

結果為:

dlrow olleh

}}}

}}

jinja2變數過濾器

django和flask框架中都使用了jinja2模板引擎來渲染模板,通過後端向模板中傳遞變數,通過過濾器可以修改這些變數,過濾器新增在變數名之後,中間使用豎線分割。例如 把值的首字母轉換為大寫,其他字母轉換為小寫 下表列出jinjia2部分的常用過濾器 過濾器說明 safe 渲染時不轉義 capi...

模板過濾器

lower 將值中所有的字元全部轉換成小寫。示例 如下 如果 value 是等於 hello world 那麼以上 將輸出 hello world upper 類似於 lower 只不過是將指定的字串全部轉換成大寫。truncatechars 如果給定的字串長度超過了過濾器指定的長度。那麼就會進行切...

十五 jinja2過濾器之實現自定義過濾器

過濾器的本質就是函式,如果在模板中呼叫這個過濾器,那麼就會將這個變數的值作為第乙個引數傳給過濾器函式,然後將函式的返回值作為濾器的返回值 實現乙個把 hello 替換成 的過濾器 也可以改為模板裡面自己設定要替換的內容 實現時間處理過濾器 返回time距離現在的時間是多久 1 如果時間間隔小於1分鐘...