1. 程式人生 > >Flask基礎(二)---模板渲染中的過濾器定義

Flask基礎(二)---模板渲染中的過濾器定義

模板渲染 過濾器

Flask中模板渲染中過濾器的定義:

from flask import Flask,render_template

app = Flask(__name__)

@app.route("/")
def index():
    return render_template("temp-demo2.html")

# 方式一
# 自定義過濾器函數,命名不能與內置過濾器重名,不然會覆蓋
# 自定義列表切片過濾器
def li_setup2(li):
    # 按照步長為2進行模板切片
    return li[::2]

# 通過模板過濾器註冊兩個參數(自定義過濾器函數名, 模板過濾器變量名)
app.add_template_filter(li_setup2, "li2")

# 方式二
# 通過裝飾器傳入模板過濾器名稱,內部實現過濾器功能再返回,
# 模板直接調用過濾器名稱即可
# 如下自定義一個列表反轉過濾器
@app.template_filter("li_reverse")
def do_li_reverse(li):
    # 通過原列表創建一個新列表
    temp_li = list(li)
    # 將新列表進行反轉
    temp_li.reverse()
    return temp_li

if __name__ == ‘__main__‘:
    app.run(debug=True)

Flask基礎(二)---模板渲染中的過濾器定義