问题描述
这是我的代码:首先选择的列表
Countries = [('US','United States'),('CA','Canada'),('AF','Afghanistan'),('AL','Albania'),('DZ','Algeria'),('AS','American Samoa'),...]
forms.py
class OrganisationForm(Form):
id = HiddenField('id',default="-1")
name = StringField('name',validators=[Datarequired()])
manager_name = StringField('manager_name')
address = StringField('address',validators=[Datarequired()])
city = StringField('city',validators=[Datarequired()])
postal_code = StringField('postal_code',validators=[Datarequired(),Length(max=16)])
province = StringField('province',validators=[Length(max=2,message="Can't exceed 2 characters")])
country = SelectField('country',validators=[Datarequired()],choices=Countries)
submit = SubmitField('Add')
cancel = SubmitField('Cancel')
我的模型。py:
class Organisation(db.Model):
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(60),nullable=False,unique=True)
invoices = db.relationship('Invoice',backref='organisation',lazy='dynamic',cascade="all,delete-orphan")
manager_name = db.Column(db.String)
address = db.Column(db.String,nullable=False)
city = db.Column(db.String,nullable=False)
province = db.Column(db.String(2),nullable=False)
country = db.Column(db.String,nullable=False)
postal_code = db.Column(db.String(16),nullable=False)
和template.htm:
{% block content %}
<div class="content-section">
{{ utils.flashed_messages() }}
<div class="center">
{% if add_orgnisation %}
<h3>add an organisation</h3>
<br/>
<br/>
{{ wtf.quick_form(form,novalidate=True) }}
{% else %}
<h3>Edit an organisation</h3>
<br/>
<br/>
{{ wtf.quick_form(form) }}
{% endif %}
<br/>
<br/>
{{ wtf.quick_form(form,novalidate=True) }}
</div>
</div>
{% endblock %}
我不明白为什么我的国家/地区选择字段会给我一个验证错误:不是有效选择...?
我试图添加coerce = tuple,但是它不起作用。 我觉得国家倒是这个问题,但不知道如何解决。
感谢您的帮助
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)