提交后清除有效表格

2024-02-05

我想在验证后重置表单。目前表单在提交且有效后仍会显示之前的数据。基本上,我希望表单恢复到所有字段都干净的原始状态。这样做的正确做法是什么?

@mod.route('/', methods=['GET', 'POST'])
def home():
    form = NewRegistration()

    if form.validate_on_submit():
        #save in db

        flash(gettext(u'Thanks for the registration.'))

    return render_template("users/registration.html", form=form)

问题是,您总是使用传入的任何数据来呈现表单,即使该数据已经过验证并已得到处理。此外,浏览器会存储上次请求的状态,因此如果此时刷新页面,浏览器将重新提交表单。

成功处理表单请求后,重定向到页面以获取新状态。

@app.route('/register', methods=['GET', 'POST'])
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        # do stuff with valid form
        # then redirect to "end" the form
        return redirect(url_for('register'))

    # initial get or form didn't validate
    return render_template('register.html', form=form)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

提交后清除有效表格 的相关文章

随机推荐