在我的表单我有这个获取对象不是可迭代的错误
mychoices = User.objects.filter(category__name='city')
我得到这个错误
User Object is not iterable
。我是新来的Django
这是下一行
relevance = forms.MultipleChoiceField(choices=mychoices, widget=forms.CheckboxSelectMultiple())
如果我评论这一行的话,我看不出有任何错误
编辑:
我发现错误,我不得不使用此
(choices=[ (o.id, str(o)) for o in User.objects.all()]) Then it works.
有没有人知道什么问题在以前的方法
''objects''应该是可迭代的,''User''不是一个模型,或者这不是错误发生的地方。我敢打赌后者,因为这个错误通常会在循环中出现。 –
废话它可以返回一个空的列表,可能导致此错误。 –
用户是一个模型,我甚至尝试过User.objects.all()。它说同样的错误。我正在尝试所有的模型名称,并提出相同的错误。我正在尝试这在forms.py。是可以的问题 – user825904