# 表单类:
class Form(FlaskForm):
username = StringField("用户名:", validators=[DataRequired()])
phone = IntegerField("手机号:", validators=[DataRequired()])
email = StringField("邮箱:", validators=[DataRequired(),email("Email ERROR")])
age = IntegerField("年龄:", validators=[DataRequired()])
about = TextAreaField("关于我:", validators=[DataRequired()])
submit = SubmitField("注册")
password = PasswordField("密码:", validators=[DataRequired()])
confirm = PasswordField("确定密码:", validators=[DataRequired()])
# 视图函数:
@app.route("/",methods=["GET","POST"])
def index():
form=Form()
print(form.validate_on_submit())
if form.validate_on_submit():
return redirect(url_for("suc"))
else:
return render_template("register2.html",form=form)
@app.route("/suc")
def suc():
return "SUCCESS"
HTML代码:
<form method="post">
<div class="form-group">

本文探讨了在Flask应用中遇到的表单验证问题,包括中文字符串编码和`validate_on_submit()`返回False的解决方案。通过将表单字段的中文注释改为Unicode字符并添加`hidden_tag()`到HTML表单,成功解决了问题,确保了表单验证的正确执行。
最低0.47元/天 解锁文章
460

被折叠的 条评论
为什么被折叠?



