【发布时间】:2020-12-15 03:57:02
【问题描述】:
我不清楚提交时如何进行表单验证。调用索引函数时,if form.validate_on_submit 将
最初是假的吧?所以它应该返回渲染的模板。但是只有对象'form'被传递给渲染的模板,那么在返回渲染的模板之后,控制将如何流回if语句? (if form.validate_on_submit)
@app.route('/upload', methods=['GET', 'POST'])
def index():
if form.validate_on_submit():
blah blah blah I do something......
return redirect(url_for('index'))
return render_template('upload.html', form=form)
【问题讨论】:
-
不会倒流。它将表单发送到浏览器并完成此功能。当用户在浏览器中单击表单中的按钮时,浏览器将表单发送到服务器(flask),服务器(flask)将表单作为新请求获取并再次运行
index()。然后它再次运行if form.validate_on_submit