溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

發(fā)布時(shí)間:2021-12-10 11:37:22 來(lái)源:億速云 閱讀:263 作者:柒染 欄目:大數(shù)據(jù)

本篇文章給大家分享的是有關(guān)如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

1. 什么是Flask-WTF?

flask-wtf是一個(gè)表單集成插件,包括CSRF,文件上傳和Recaptcha集成等。

2. 如何使用Flask-WTF?

在命令行中執(zhí)行pip install flask-wtf進(jìn)行安裝:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

首先接著上一章內(nèi)容,在Flask_Blog文件夾中新建一個(gè)文件forms.py:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

想要使用這個(gè)表單,我們需要為修改flaskblog.py,添加一個(gè)密鑰,先隨機(jī)生成一個(gè)密鑰:

Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> import secrets>>> secrets.token_hex(16)'037a34afcf9ceba959865d80f69e2d6f'>>>

接著修改flaskblog.py:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

然后我們添加表單的注冊(cè)和登錄方法,修改flaskblog.py:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

在文件夾templates中新建一個(gè)register.html注冊(cè)頁(yè)面,內(nèi)容為:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

在文件夾templates中新建一個(gè)login.html登錄頁(yè)面,內(nèi)容為:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

調(diào)整修改文件夾templates中l(wèi)ayout.html,導(dǎo)航路徑使用url_for(),添加登錄和注冊(cè)成功后的提示信息代碼:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

然后我們?cè)谖募AFlask_Blog打開(kāi)命令行cmd,運(yùn)行python falskblog.py:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

訪問(wèn)地址http://127.0.0.1:5000,點(diǎn)擊導(dǎo)航注冊(cè)鏈接,輸入不符合驗(yàn)證規(guī)則的測(cè)試數(shù)據(jù)(出現(xiàn)相應(yīng)的提示信息,這里默認(rèn)是英文提示,可以改成中文提示,需修改代碼,大家可以自己試試):

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

輸入符合驗(yàn)證規(guī)則的數(shù)據(jù)之后,提示創(chuàng)建賬戶:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

點(diǎn)擊導(dǎo)航中登錄連接,輸入和代碼中不一樣的郵箱和密碼:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

輸入正確的用戶名和密碼:

如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能

以上就是如何實(shí)現(xiàn)Flask中的表單和輸入驗(yàn)證功能,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI