我UserViewCreateForm
在我的烧瓶管理员中创建了一个自定义(使用 wtforms),如下所示: -
from app.vendors.models import Vendor
class UserViewCreateForm(form.Form):
username = fields.TextField('Username')
first_name = fields.TextField('First Name')
last_name = fields.TextField('Last Name')
email = fields.TextField('Email')
contact_number = fields.TextField('Contact Number')
password = fields.PasswordField('Password')
is_admin = fields.BooleanField('Is Admin')
is_active = fields.BooleanField('Is Active')
is_verified = fields.BooleanField('Is Verified')
vendor = fields.SelectField('Vendor', coerce=int)
class UserView(ModelView):
form_overrides = dict(title=SelectField)
form_args = dict(
# Pass the choices to the `SelectField`
title=dict(
choices=TITLE_TYPE
))
def __init__(self, session, **kwargs):
super(UserView, self).__init__(User, session, **kwargs)
def is_accessible(self):
return login.current_user.is_authenticated()
def create_form(self):
form = UserViewCreateForm()
form.vendor.choices = [(0, '')] + [(v.id, v.name) for v in Vendor.query.all()]
return form
供应商选择字段给了我一个Not a valid choice
验证错误。
我做错了什么?