python表单验证wtf_python – Flask-WTF – validate_on_submit()从不执行

您没有在HTML表单中插入CSRF字段。

{{ form.csrf_token }}

{{ form.name }}

将form.csrf_token添加到模板(docs)后,窗体将按预期验证。

验证表单后,添加print(form.errors)以查看提出的错误。验证前错误将为空。在这种情况下,有一个错误

@book.route('/book/new_no_csrf', methods=['GET', 'POST'])

def customers_new_no_csrf():

form = BookNewForm()

print(form.errors)

if form.is_submitted():

print "submitted"

if form.validate():

print "valid"

print(form.errors)

if form.validate_on_submit():

flash("Successfully created a new book")

return redirect(url_for('.books_show'))

return render_template('books_new.html', form=form)

{}

submitted

{'csrf_token': [u'CSRF token missing']}

127.0.0.1 - - [29/May/2012 02:01:08] "POST /book/new_no_csrf HTTP/1.1" 200 -

127.0.0.1 - - [29/May/2012 02:01:08] "GET /favicon.ico HTTP/1.1" 404 -

你可能感兴趣的:(python表单验证wtf)