做一个简单的web表单,当你输入用户名的时候会产生相应的欢迎信息,效果展示如下:
其实空字符提交时会出现一行Resquired()函数产生的提醒文字,截图时点击屏幕就消失了。。。。
看到导航栏里有两个选项,在head中有标签图标,这些都是在下文中base.html中定义的,如果了解html的基本语法就很容易看明白。
定义表单:
from flask.ext.wtf import Form
from wtforms import StringField, SubmitField
from wtforms.validators import Required
class NameForm(Form):
name = StringField('What is your name?', validators=[Required()])
submit = SubmitField('Submit')
使用扩展Flask-WTF,处理web表单会变的相对简单,对于小白的我来说感觉功能十分强大。在这个扩展中,每一个web表单都由一个form类表示,StringField和Submitfield分别是‘text’和‘submit’类型的输入元素,Required()函数是确保表单中输入不为空,这三个函数其实和在HTML中作用一模一样的,也正是为了下一步渲染成HTML格式,其实这个扩展就是把部分HTML的功能打包了,还有其他类似的HTML标准字段这个扩展也支持。
渲染表单:
以上的代码中我们还定义了类NameForm以及其参数form,渲染这个简单表单时,可以通过form来导入模板,会渲染生成一个简单的表单。
<form method="POST">
{
{ form.hidden_tag() }}