Flask Web学习笔记(二)

Web表单


1.安装flask-wtf模块

(venv) $ pip install flask-wtf

2.导入和定义表单类

使用 Flask-WTF 时,每个 Web 表单都由一个继承自 Form 的类表示。这个类定义表单中的
一组字段,每个字段都用对象表示。字段对象可附属一个或多个验证函数。验证函数用来
验证用户提交的输入值是否符合要求。

from flask_wtf import Form, FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import Required
import os

app.config['SECRET_KEY']=os.urandom(20)


class NameForm(FlaskForm):
    """docstring for NameForm"""
    name = StringField('What is your name?', validators=[Required()])
    submit = SubmitField('Submit')


@app.route('/',methods=['GET','POST'])
def index():
    name = None
    form = NameForm()
    if form.validate_on_submit():
        name = form.name.data
        form.name.data = ''
    #return '<h1>Hello World!!</h1>'
    #return render_template('index.html',current_time=datetime.utcnow())
    return render_template('index.html',form=form,name=name)

3.index.html

{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}

{% block title %}Flasky{% endblock %}
{% block page_content %} 
    <div class="page-header"> 
        <h1>Hello,{% if name %}{{ name }}{% else %}Stranger{% endif %}!</h1> 
    </div>
     {{ wtf.quick_form(form) }} 
{% endblock %}

4.最终页面

 

 

 

posted @ 2018-09-23 15:37  Alan-lee  阅读(129)  评论(0编辑  收藏  举报