Python——Flask框架——Web表單

1、框架Flask-WTF

  安裝: pip install flask-wtfhtml

  須要程序設置一個密鑰 正則表達式

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

2、表單

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

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()app

(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>
相關文章
相關標籤/搜索