シンプルフラスコ-WTFフォームの設定と取り戻します

 

シンプルフラスコ-WTFフォームの設定と取り戻します

 

!は/ usr / binに/ envをパイソン

フラスコ輸入フラスコ、render_template_string
 から flask_wtf 輸入FlaskForm
 から wtforms.fieldsはインポートのBooleanField、DecimalFieldは、IntegerFieldとし、\
    PASSWORDFIELD、RadioField、SelectMultipleField、SelectField、StringField、\
    SubmitField、TextAreaField

アプリケーション =アプリ=フラスコ(' WSGI ' 
App.configファイル[ ' SECRET_KEY ' ] = ' 1234567890 '


クラスLanguageForm(FlaskForm):
    文字列 = StringField(ラベル= " テキストフィールド" 
    ブール =のBooleanField(ラベル= ' ブールの選択' 
    小数 = DecimalFieldは(ラベル= ' 進数' 
    integer = IntegerField(label='整数')
    無線 = RadioField(ラベル= ' ラジオ'、選択肢= [(' M '' M ')、(' F. '' F ')])  再割り当てすることはできません。
    = SelectField SELECT(ラベル= ' ドロップダウンラジオ'、選択肢= [(' A '' A ')、(' B '' B ')、(' C ''ドロップダウンラジオ、再割り当てエラー。
    = TextAreaFieldのTextArea(ラベル= ' 複数行のテキスト' 
    パスワード = PASSWORDFIELD(ラベル= ' パスワード' 
    提出 = SubmitField(ラベル= ' 按钮' 
    selectMultiple = SelectMultipleField(ラベル= ' 複数の選択肢'、選択肢= [(' A '' A ')、(' B '' B ')、(' C '' C ')])  実行使用CTRL複数の選択肢


template_form = ""」
{%ブロックコンテンツ%}
<H1>测试フラスコWTF </ H1>
<FORM METHOD = "POST" ACTION = "/">
    {{}} form.csrf_token
    <DIV> {{form.string.label}}、{{form.string}} </ div>
    <DIV> {{form.boolean.label}}、{{form.boolean}} </ div>
    <DIV> {{form.decimal.label}}、{{form.decimal}} </ div>
    <DIV> {{form.integer.label}}、{{form.integer}} </ div>
    <DIV> {{form.radio.label}}、{{form.radio}} </ div>
    <DIV> {{form.select.label}}、{{form.select}} </ div>
    <DIV> {{form.textarea.label}}、{{form.textarea}} </ div>
    <DIV> {{form.password.label}}、{{form.password}} </ div>
    <DIV> {{form.selectmultiple.label}}、{{form.selectmultiple}} </ div>
    <DIV> {{form.submit.label}}、{{form.submit}} </ div>
    提交</ button>の< "BTN" ボタンタイプ= "提出" クラス=>    
</フォーム>
{%エンドブロック%}

「」」


@ app.route(' / '、メソッド= [ ' GET '' POST ' ])
 DEF インデックス():
    フォーム = LanguageForm()
     もしform.validate_on_submit():
         プリント(form.string.data)
         プリント(form.boolean.data)
         プリント(form.decimal.data)
         プリント(form.integer.data)
         プリント(form.radio。データ)
         、印刷(form.select.data)
         プリント(form.textarea.data)
         プリント(form.password.data)
         プリント(form.submit.data)
         プリント(form.selectmultiple.data)
         リターン render_template_string(template_form、フォーム= フォーム)
     印刷' GET ' の戻り render_template_string(template_form、フォーム= フォーム)


もし __name__ == ' __main__ ' 
    app.run(
        ホスト = ' 0.0.0.0 ' 
        デバッグ =真)

おすすめ

転載: www.cnblogs.com/jackadam/p/12167430.html