Django models 复选框SelectMultiple validation error在Django上提交表单时出错

Django models 复选框SelectMultiple validation error在Django上提交表单时出错,django-models,django-forms,Django Models,Django Forms,models.py class MyModel(models.Model): OPTION_CHOICES = (('a','a'),('b','b')) option = models.CharField(max_length=1, choices=OPTION_CHOICES) forms.py class MyForm(ModelForm): class Meta: model=MyModel field

models.py

class MyModel(models.Model):
      OPTION_CHOICES = (('a','a'),('b','b'))
      option = models.CharField(max_length=1, choices=OPTION_CHOICES)
forms.py

class MyForm(ModelForm):
      class Meta:
            model=MyModel
            fields=['option']
            widgets = {'option':CheckboxSelectMultiple(),}
当我尝试提交表单时,出现验证错误,无法提交。当我偶然选中复选框选择multiple到
RadioSelect
时,它工作正常。那么如何使用
复选框selectmultiple

option = models.CharField(max_length=1, choices=OPTION_CHOICES)
只接受一个字符。通过使用多选小部件提交表单,您可以尝试存储列表:

[u'a']
这当然会导致错误:

Select a valid choice. [u'a'] is not one of the available choices.
同样:
'a'
'b'
是字符串和有效选项,
[u'a']
是一个列表,但无效


要存储列表(或多个关系),应选择其他字段类型。确切的字段类型取决于您的项目要求。没有足够的信息为您提供使用建议。

错误说明了什么?当您同时选择“a”和“b”时,您认为选项字段中会保存哪些内容?您的字段应接受多个选项。您可以将字段名从option更改为opntions,并将其设置为多对多字段,以便它可以选择(与)多个对象的关系。或者执行按位@allcaps操作。错误显示选择有效选项。[u'a']不是可用的选项之一。是的,[]是一个列表。没有一个选项是列表。您不能在接受单个字符的字段中存储列表。请参阅我的其他注释。@allcaps
ManyToManyField
要求我指定与另一个我没有的模型的关系,是否有其他解决方案?