python框架-flask05 表单

一:表单

表单用于注册,修改用户数据等场景。

flask-wtf提供了一个包,可以创建表单:pip install flask-wtf

为了防止跨域请求,flask_wtf自己生成一个秘钥,用秘钥生成加密口令,然后用口令验证表单中的数据真伪(是否被篡改过)

from flask import Flask
from flask import request
from flask import redirect
from flask.ext.script import Manager
from flask import render_template

app = Flask(__name__)
app.config["secret_key"] = "hard to guess"  # 加密的秘钥
# 通过app.config配置到项目的app的配置文件中,字典类型

@app.route("/user/<id>")
def user_name(id):
    if id == "1":
        li = ["zhang","wang","li","zhao"]
        return render_template("user.html",comments=li)
    else:
        return "不符合"

if __name__ == "__main__":
    app.run(debug=True)

注意:为了增强安全性,密钥不应该直接写入代码,而要保存在环境变量中 ,以后会进行这样设置。

例如一个简单的web表单

from flask.ext.wtf import Form # Form类的来源
from wtforms import StringField, SubmitField
from wtforms.validators import Required
class NameForm(Form): # 每个web表单类都继承Form类
   # StringField()普通的字符串输入文本框,validators=[],指定了一个验证函数组成的列表,Required()验证字段不能为空。
    name = StringField(‘What is your name?‘, validators=[Required()])    # SubmitField()点击提交按钮
    submit = SubmitField(‘Submit‘)

表单类的字段类型为:

相关推荐