每当运行form.is_valid IM()我得到的错误:选择一个有效的选择ModelChoiceField
Select a valid choice. That choice is not one of the available choices.
这是我做我的观点:
timeframes = HostTimeFrame.objects.all()
if request.method == 'POST':
form = SelectDatesForm(request.POST, timeframes=timeframes)
if form.is_valid():
pass
else:
form = SelectDatesForm(timeframes=timeframes)
我的形式做到这一点:
class SelectDatesForm(forms.Form):
timeframes = forms.ModelChoiceField(queryset=HostTimeFrame.objects.none(), widget=forms.CheckboxSelectMultiple,
empty_label=None)
def __init__(self, *args, **kwargs):
qs = kwargs.pop('timeframes')
super(SelectDatesForm, self).__init__(*args, **kwargs)
self.fields['timeframes'].queryset = qs.order_by('start')
我一直在尝试几个小时才能找到这个实际的验证完成,我发现它,创建了一个bug here。
哇...这个错误信息应该更清楚,然后工作,谢谢! – Julian