1.CBV :
from flask import views
class LoginView(views.MethodView):
def get(self):
return
def post(self):
return
app.add_url_rule("/login",endpoint=None,view_func=LoginView.as_view("login"))
此方法为CBV视图添加路由
2.flash:
from flask import flash,get_flash_messages
flash("","tag") 在视图函数中通过flash赋值,且定义标签
get_flash_messages("tag") 可以在任意视图函数中调用此方法获得flash的赋值
3.加载 Flask-Session 第三方模块
from flask_session import Session
from flask import session
app.config["SESSION_TYPE"] = "redis"
app.config["SESSION_REDIS"] = Redis("127.0.0.1",6379,db=7)
Session(app)
session["user"] == "123"
session.get("user")
需要加载第三方模块,然后将session存入redis,指定redist配置
4. 下载第三方木块WTForms - MoudelForm
from wtfroms.fields import simple,core
from wtfroms import Form,validators
class LoginForm(Form): 方法与django的form表单类似
username = simple.StringFields(
label = "" #看源码 __init__
)
lf = LoginForm() 实例化表单,并传入模板语言中
render_template("html",lf=lf)
{{ lf.uername }}
{{ lf.uername.label }}
{{ lf.uername.errors.0 }}
lf = LoginForm(request.form)
if not lf.validata(): 验证表单数据合法性
render_template("html",lf=lf)
lf.data.get("username")