How to route form errors to another view using Flask, FlaskWTF
我正在尝试使用flask创建两个视图。第一个视图
表单被提交给第二个视图
我的问题是form.errors没有路由到
以下是我目前拥有的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | def show_entries(): entryForm = EntryForm() entries = g.user.entries return render_template('show_entries.html', entries=entries, entryForm=entryForm) def new_entry(): form = EntryForm() if form.validate_on_submit(): newEntry = Entry(g.user, form.time.data) db_session.add(newEntry) db_session.commit() flash('New entry was succesfully posted') return redirect(url_for('show_entries')) |
通常的模式是以新的条目作为表单,以列表页的形式显示条目。当您对新的条目执行GET请求时,您将获得表单,然后将其发布以添加条目。这样,如果有错误,您可以将其显示在表单旁边-所有数据都可用。如果按现有方式拆分视图,则需要某种方式将错误数据(和表单数据)从新的"条目"视图移动到"显示条目"视图。
更像(未测试的):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | def show_entries(): entries = g.user.entries return render_template('show_entries.html', entries=entries) def new_entry(): form = EntryForm() if form.validate_on_submit(): newEntry = Entry(g.user, form.time.data) db_session.add(newEntry) db_session.commit() flash('New entry was successfully posted') return redirect(url_for('show_entries')) return render_template('show_new_entry_form.html', entryForm=form) |