Flask的表單處理

2021-08-04 16:01:14 字數 2261 閱讀 7052

web 表單是在任何乙個 web 應用程式中最基本的一部分。我們將使用表單允許使用者寫文章,以及登入到應用程式中。

乙個名為 flask-wtf 的擴充套件,將 wtforms 整合到 flask 程式,可以幫助完成很多事情

表單類表單的建立,可以通過繼承從 flask-wtf 匯入的form父類實現

from flask.ext.wtf import form # 表單類,從第三方擴充套件的命名空間 匯入
表單類中需要定義 屬性/字段,值是字段型別類,就是將要在 html 中顯示的表單各個字段,其實就是對 html 表單各種標籤的包裝

from wtforms import stringfield, booleanfield, submitfield, passwordfield, textareafield, selectfield # 字段型別類,字串、布林值、提交、密碼、文字區域、選擇框
驗證器列表,檢查使用者填寫表單時輸入的內容是否符合我們的期望,有多個驗證器時,需要同時通過驗證

from wtforms.validators import datarequired, required, length, email  , regexp, equalto # 驗證器,直接從 wtforms.validators 匯入
如乙個簡單表單類:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# @time : 2017/7/31 13:25

# @file : form.py

from flask_wtf import form

from wtforms import stringfield, passwordfield, booleanfield, submitfield

from wtforms.validators import required, length, email

#通過繼承form類實現

class

form_d

(form):

#對應html表單中的name欄位,第二個引數為乙個驗證函式

name=stringfield('name',validators=[required()])

#對應html表單中的pwd欄位,第二個引數為乙個驗證函式

pwd=stringfield('pwd',validators=[required()])

submit=submitfield('submit')

簡單表單登入驗證:

from flask import flask,render_template,request

from form import form_d

from blue import blue

defindex

():return render_template('login.html')

#設定name和pwd的值

name='123'

password='123'

deflogin

(): forms=form_d()

pwd=forms.pwd.data

username=forms.name.data

if pwd==password and username==name:

return render_template('o.html')

else:

return

'eer'

if __name__ == '__main__':

對應登入頁面

lang="en">

charset="utf-8">

titletitle>

head>

action="/login"

method="post">

請輸入賬號span>

type="text"

name="name"

id="name"

placeholder="name">

請輸入密碼span>

type="password"

name="pwd"

id="pwd"

placeholder="password">

type="submit"

name="submit">

form>

body>

html>

Flask中整合的web表單處理

為什麼使用flask wtf?request物件公開了所有客戶端傳送的請求資訊。特別是request.form可以訪問post請求提交的表單資料。儘管flask的request物件提供的支援足以處理web表單,但依然有許多任務會變得單調且重複。表單的html 生成和驗證提交的表單資料就是兩個很好的例...

Flask處理Web表單的實現方法

web表單是web應用程式的基本功能。它是html頁面中負責資料採集的部件。表單有三個部分組成 表單標籤 表單域 表單按鈕。表單允許使用者輸入資料,負責html頁面資料採集,通過表單將使用者輸入的資料提交給伺服器。在flask中,為了處理web表單,我們一般使用flask wtf擴充套件,它封裝了w...

flask 使用Flask WTF處理表單

我的理解是flask wtf與html檔案的關係就如同sqlalchemy與資料庫之間的關係。通過python form類,生成html 並在html模板檔案中通過 變數的方式引用這些生成的html 好處就是可以使用python類管理html的表單,而不需要自己去敲html flask wtf fl...