Python Flask 解决form.validate_on_submit()总是为false的问题

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 表单类:
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:
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值