Flask的表單管理

2021-08-20 21:16:09 字數 1442 閱讀 1389

在製作使用者註冊登入介面時候涉及到表單操作

def register():

if request.method == 'get':

return render('register.html')

else:

name = request.from['username']

password = request.from['password']

return '您的使用者名為%s,密碼是%s'%(name, password)

自定義的表單類:需繼承flaskform,

# 自定義的表單類繼承flaskform

class regform(flaskform):

'''定義表單字段

'''# 使用者名字段及其預校驗規則

name = stringfield(

label='使用者名稱',

# 定義預校驗規則

validators=[

datarequired(message='傻鳥必須填寫使用者名稱'),

length(min=6, max=20, message='傻吊使用者名稱必須在6-20位之間')])

# 密碼字段及其預校驗規則

password = passwordfield(

label='密碼',

validators=[

datarequired(message='傻叉必須填寫密碼'),

length(6, 20, '傻蛋密碼長度必須在6-20位之間')]

)# 重複密碼字段及其預校驗規則

pwdrepeat = passwordfield(

label='重複密碼',

validators=[

equalto('password', message='傻瓜兩次密碼不一致')])

# 提交按鈕

submit = submitfield(label='提交')

'''自定義字段校驗規則(當系統的規則無法滿足需求時)

'''# 自定義預校驗規則:def validate_filedname(self,field):...raise validationerror('error msg...')

# 不符合規則時丟擲validationerror,否則啥也不幹

def validate_name(self, field):

# 檢測使用者在字段中輸入的內容是否是全中文

if not re.match(r'^[\u4e00-\u9fa5]+$', field.data):

# 不符合規則時丟擲校驗異常

raise validationerror(message='使用者名稱必須為中文')

# 一切資料(field.data)都是合法的乙個校驗規則...

def validate_password(self, field):

pass

Flask的表單處理

web 表單是在任何乙個 web 應用程式中最基本的一部分。我們將使用表單允許使用者寫文章,以及登入到應用程式中。乙個名為 flask wtf 的擴充套件,將 wtforms 整合到 flask 程式,可以幫助完成很多事情 表單類表單的建立,可以通過繼承從 flask wtf 匯入的form父類實現...

flask 模板 表單

xss攻擊可以通過過濾器防護,那csrf攻擊呢?所以需要使用flask wtf表單擴充套件,幫助進行csrf驗證,幫助我們快速定義表單模板,而且可以幫助我們在檢視中驗證表的資料。pip install flask wtf表單前後端驗證都需要自己處理,需要在前端進行確認密碼驗證,後端也要驗證。字段物件...

Flask 表單驗證

安裝拓展 pip3 install i flask wtf使用flask wtf需要配置引數secret key。csrf enabled是為了csrf 跨站請求偽造 保護。secret key用來生成加密令牌,當csrf啟用的時候,該設定會根據設定的密匙生成加密令牌 常用的字段 stringfie...