选择一个有效的选择。不是可用的选择之一

时间:2018-08-07 17:55:01

标签: django python-3.x django-forms

forms.py

LANGUAGE_CHOICE = (
   ('C', 'C'),
   ('cplus', 'C++'),
   ('csharp', 'C#'),
   ('html', 'Html'),
   )
language = forms.ChoiceField(choices=LANGUAGE_CHOICE, label= "Programming Language you know:",widget= forms.CheckboxSelectMultiple())

templates / formview.html

<div class="row">
 <div class="col-sm-6 label_field">
 <label for="{{form.language.id_for_label}}"{{form.language.label}}</label>
 </div>
 <div class="col-sm-6">
 {% for checkbox in form.language %}
     {{checkbox}}<br>
 {% endfor %}
 </div>
 </div>

验证错误

  

选择一个有效的选择。 ['C','csharp','html']不是以下内容之一   可用的选择。

任何人都可以帮助我解决CheckboxSelectMultiple的验证错误

1 个答案:

答案 0 :(得分:1)

表单字段(forms.ChoiceField)与您选择的小部件之间不匹配。表单字段希望选择并过帐单个选项。如果要存储所选选项的列表,则应使用其他表单字段类型,最有可能是https://docs.djangoproject.com/en/2.1/ref/forms/fields/#multiplechoicefield