Flask表單處理:WTForms字段與表單提交
本文介紹了Flask中通過`Flask-WTF`(基於WTForms)處理表單的核心知識點。首先,表單依賴`Flask-WTF`擴展實現,需通過`pip install flask-wtf`安裝。 WTForms提供多種字段類型(如`StringField`、`PasswordField`、`SubmitField`等)對應HTML輸入控件。定義表單類需繼承`FlaskForm`,在類中聲明字段並設置驗證器(如`DataRequired`、`Length`、`Email`),示例中`LoginForm`包含用戶名、郵箱、密碼和提交按鈕,各字段驗證規則明確。 視圖函數中需創建表單實例,通過`form.validate_on_submit()`檢查POST請求及數據驗證,驗證通過則處理數據(如登錄驗證),否則渲染模板。模板需用`form.hidden_tag()`生成CSRF令牌防攻擊,結合`form.errors`顯示錯誤信息。 核心原理包括表單定義、請求處理、數據驗證、模板渲染及CSRF保護。常見問題如CSRF令牌缺失需檢查`form.hidden_tag()`和`SECRET_KEY`,驗證失敗可通過`form.errors`排查,密碼輸入需用
閱讀全文