如何在烧瓶中验证失败后保持输入

时间:2017-05-22 18:20:04

标签: python forms validation flask

使用django,我可以在验证失败后将POST数据传递给表单,用户不必再输入所有内容:

question_form = QuestionForm(request.POST)
choice_form_set = ChoiceFormSet(request.POST)

我怎么能在烧瓶中自己实现这个?

1 个答案:

答案 0 :(得分:1)

同样可能与Flask相同:

@app.route('/register', methods=['GET', 'POST'])
def register():
    form = RegistrationForm(request.form)
    if request.method == 'POST' and form.validate():
        user = User(form.username.data, form.email.data,
                    form.password.data)
        db_session.add(user)
        flash('Thanks for registering')
        return redirect(url_for('login'))
    return render_template('register.html', form=form)

if表达式执行验证检查。如果验证成功,则将用户转发到登录页面。如果它为假,则使用更新的表单作为参数再次调用render_template,因此表单将再次显示先前输入的数据(可能带有需要修复的提示)。

代码取自Flask documentation