Python——Flask框架——Web表單


一、框架Flask-WTF

  安裝: pip install flask-wtf

  需要程序設置一個密鑰 

app = Flask(__name__)
app.config['SECRET_KEY'] = 'hard to geuss string'

二、表單

(1)實例Web表單,包含一個文本字段和一個提交按鈕

from flask.ext.wtf import Form
from wtforms import StringField,SubmitField
from wtforms.validators import Required

class NameForm(Form):
    #name的一段文本文字
    name = StringField('What is you name?',validator = [required()])
    #一個名為Submit的按鈕
    submit = SubmitField('Submit')

(2)WTForms支持的HTML字段

字段類型 說明
StringField 文本字段
TextAreaField 多行文本字段
PasswordField 密碼文本字段
HiddenField 隱藏文本字段
DateField 文本字段,格式為datetime.data
DateTimeField 文本字段,格式為datetime.,datetime
IntegerField 文本字段,值為整數
DecialField 文本字段,decimal.Decimal
FloatField 文本字段,值為浮點數
BooleanField 復選框,值為True和False
RadioField 一組單選框
SelectField 下拉列表
SelectMultipeField 下拉列表,可以選擇多個值
FileField 文件上傳
SubmitField 提交按鈕
FormField 吧表單作為字段嵌入另一個表單
FieldList 一組指定類型的字段

(3)WTForms驗證函數

函數 說明
Email 驗證電子郵件地址
EqualTo 比較兩個字段值
IPAddress 驗證網絡地址
Length 驗證字符串長度
NumberRange 驗證輸入值是否在數字范圍內
Optional 無輸入值跳過其他驗證函數
Required 確保字段中有數據
Regexp 使用正則表達式驗證輸入值
URL 驗證URL
AnyOf 確保輸入值在可選擇值列表中
NoneOf 確保輸入值不可再可選值列表中

(4)將表單渲染成HTML

{% import "bootstrao/wtf.html" as wtf %}
{{wtf.quick_form(form)}}

**在視圖函數中處理表單  form = NameForm()

(5)Flask消息——使用flash()函數

flash('Looks like you hanve changed your name!')

  在模板中渲染函數

{% for message in get_flashed_messages() %}
<dic class="alert-warning">
    <button type="button" class="close" data-dismiss="alert">%times;</button>
    {{message}}
</div>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM