在表单验证时提示错误:选择一个有效的选项
例如有这样一个表单:
class ProductForm(Form):
category = fields.MultipleChoiceField(
widget=widgets.SelectMultiple(),
choices=((1, '未分类'),),
)
现在这个表单中category只有一个选项value为1,显示为未分类,如果网页中提交的值不是1,那么就会提示“选择一个有效的选项错误”。
一般我们会在视图函数中request.method等于GET时从数据库获取数据,并给choices赋值。那么这里就要注意,我们要在request.method等于POST时调用校验函数前(is_valid()),也给choices赋值。否则就会因为选项中缺少相应选项而校验错误。