Python 带有SelectField的Flask WTForm不适用于if form.validate\u on\u submit

Python 带有SelectField的Flask WTForm不适用于if form.validate\u on\u submit,python,forms,validation,flask,Python,Forms,Validation,Flask,我已使用SelectField创建了一个WTForm,但该表单无效。当我按下提交按钮时,我没有得到任何错误 看法 我的表格: from flask_wtf import FlaskForm from wtforms import SelectField from wtforms.validators import DataRequired class AddVirtualAssistant(FlaskForm): job = SelectField("job", choices=[]

我已使用SelectField创建了一个WTForm,但该表单无效。当我按下提交按钮时,我没有得到任何错误

看法

我的表格:

from flask_wtf import FlaskForm
from wtforms import SelectField
from wtforms.validators import DataRequired

class AddVirtualAssistant(FlaskForm):

    job = SelectField("job", choices=[], validators=[DataRequired()])
我通过在控制台中添加打印错误解决了所有阅读本文的人的问题

print(form.errors.items())
错误是[“太多的值无法解包(预期为2)”]))我有一个字符串列表,这是一个错误。我把表格选项改为

list(enumerate([i["title"] for i in data if "title" in i], 1)) 

而且表单现在是有效的。

您的问题是返回的表单在某种程度上是无效的。我建议将表单中的错误打印到日志记录器(它有一个简单的
form.errors
属性,或者在发布后只需使用pdb进行调试


使用
Selectfield
我认为问题最可能的根源在于它无法在选项之间找到所选选项

你知道我在哪里可以读取如何在记录器中打印错误吗?我正在尝试阅读更多关于form.errors的信息,但找不到任何内容。我是一个新手,不知道如何使用我找到的debugI我必须添加打印(form.errors.items())
list(enumerate([i["title"] for i in data if "title" in i], 1))