1
我正嘗試使用複選框創建多項選擇。 我在複選框中的數據顯示,但是當我提出我得到以下錯誤:Django中的多項選擇會導致'解包數值太多'
模板錯誤:值過多解壓
,我讀了一些人的問題是他們並沒有創造2tuples作爲元素的選擇列表。但似乎並非如此。問題是什麼?
forms.py
class Test(forms.Form):
answer = forms.MultipleChoiceField(widget=forms.CheckboxSelectMultiple)
def __init__(self, options, *args, **kwargs):
super(Test, self).__init__(*args, **kwargs)
self.fields['answer'].choices = options
views.py
def multiChoice(request,ex):
multi = MultipleChoice.objects.get(pk=ex)
choices = multi.correct_choices.all() | multi.wrong_choices.all()
if request.method == 'POST':
form = Test(request.POST)
if form.is_valid():
multiple = form.save()
return HttpResponseRedirect('/edu/multi/1')
else:
form = Test(options=[(choice.id , choice) for choice in choices])
return render(request,'edu/multi.html', {'form': form, 'multi': multi , 'choices': choices})
太謝謝你了!你發現了錯誤,並節省了我的時間。 – 2013-03-13 18:56:16
感謝您的回答。看到這個後,我意識到錯誤是多麼簡單。 – regmi 2016-04-27 01:32:21