flask框架模板jinja2

2021-08-22 16:35:21 字數 1969 閱讀 5058

from flask import flask,render_template

from flask_script import manager

def index():

return "this is index"

def template():

return render_template("file01.html",name="tom", age=19, list=[1,2,3,4,5,6])

def filter01(list):

list.reverse()

return list

#使用裝飾器自定義過濾器

def filter02(list):

list.reverse()

return list

if __name__ == "__main__":

manager.run()

./templates/file01.html

}

}、}過濾器

}}、}

自定義過濾器

}自定義過濾器2}巨集

}:}:

}巨集-**復用

}**復用-包含

特有變數

}

特有函式

}、}、}

**復用-繼承

}這是子模板的top**

./templates/file02.html

}:}:

./templates/file03.html

這是父模板的top**

這是父模板的content**

wtf表單

from flask import flask, render_template

from flask_wtf import flaskform

from wtforms import stringfield, passwordfield, submitfield

from wtforms.validators import datarequired, equalto

class mywtfform(flaskform):

username = stringfield(label='使用者名稱:', validators=[datarequired('使用者名稱不能為空')])

password = passwordfield(label='密碼:', validators=[datarequired('密碼不能為空')])

repassword = passwordfield(label='確認密碼:', validators=[datarequired('確認密碼不能為空'), equalto('password', '兩次輸入的密碼不一致')])

submit = submitfield(label='註冊')

def index():

my_form = mywtfform()

return render_template("temp1.html", my_form=my_form)

def reg():

my_form = mywtfform()

username = my_form.username.data

password = my_form.password.data

if my_form.validate_on_submit():

return "註冊成功,使用者名稱:%s,密碼:%s" % (username, password)

else:

return "註冊失敗"

if __name__ == "__main__":

./templates/temp1.html

Flask框架(二)模板引擎JinJa2

三.巨集操作 jinja2 是乙個現代的,設計者友好的,仿照 django 模板的 python 模板語言。它速度快,被廣泛使用,並且提供了可選的沙箱模板執行環境保證安全 hello lower safe 渲染值時不轉義 capitalize 把值的首字母轉換成大寫,其他字母轉換成小寫 lower ...

1 4 Flask框架學習 模板 Jinja2簡介

要渲染乙個模板,通過render temlate方法 from flask import flask,render template about def about return render template about.html 更改模板資料夾為c templates from flask im...

Flask 學習(二)jinja2模板介紹

舉例 flask python from flask import flask,render template,redirect,request student student list student dict b c detail defdetail print url for detail r...