flask扩展包WTFfrom中各个模块的作用:
1.flask_wtf:存放表单类,当创建自己的表单类是必须继承这种表单类。class From(FromFlask):
pass
2.wtforms.validators:存放一些验证函数,用于表单的验证;
用法:from wtforms.validators import DataRequired,email
如:DataRequired', 'data_required', 'Email', 'email', 'EqualTo', 'equal_to',
'IPAddress', 'ip_address', 'InputRequired', 'input_required', 'Length',
'length', 'NumberRange', 'number_range', 'Optional', 'optional',
'Required', 'required', 'Regexp', 'regexp', 'URL', 'url', 'AnyOf',
'any_of', 'NoneOf', 'none_of', 'MacAddress', 'mac_address', 'UUID'
3.wtforms:存放一些限制数据类型的函数。
用法:from wtforms import SubmitField
例子:BooleanField', 'TextAreaField', 'PasswordField', 'FileField',
'HiddenField', 'SubmitField', 'TextField'
例子:后端代码实现:文件名:flask.py
# 导入flask模块
from flask import Flask
# 导入flask_wtf 扩展包
from flask_wtf import FlaskForm
#导入模块wtforms.validators
from wtforms.validators import DataRequired,EqualTo
#导入wtforms 模块
from wtforms import SubmitField,StringField
from flask import render_template
# 实例化对象
app = Flask(__name__)
app.config['SECRET_KEY']='abcde'
# 创建From 表单
class Form(FlaskForm):
author = StringField(validators=[DataRequired()])
book = StringField(validators=[DataRequired()])
submit = SubmitField("提交")
# 添加路由
@app.route("/")
#定义视图函数
def index():
form = Form()
return render_template("index1.html",form = form)
if __name__ == '__main__':
app.run(debug=True)
# 前端代码实现:index.html
<form method="POST">
{{ form.csrf_token }}
<h1>作者文章</h1>
<lable>作者</lable>{{ form.author }}<br>
<lable>文章</lable>{{ form.book }}<br>
{{ form.submit }}<br>
</form>