为什么我的应用中出现以下错误
Caught TypeError while rendering: 'ModelNameHere' object is not iterable
但是当我从shell执行它时我没有得到它?
我的表单中只有一个自定义字段,它继承自forms.ModelForm
custom_serving_size = forms.ChoiceField(
ServingSize.objects.all(),
widget=forms.Select(attrs={'class':'ddl'})
)
修改
这是我的表单类
class RecipeIngredientForm(forms.ModelForm):
serving_size = forms.ChoiceField(choices=ServingSize.objects.all())
错误发生在ServingSize.objects.all()
上答案 0 :(得分:11)
custom_serving_size = forms.ChoiceField(
ServingSize.objects.all(),
widget=forms.Select(attrs={'class':'ddl'})
)
这必须是
custom_serving_size = forms.ModelChoiceField(
queryset=ServingSize.objects.all(),
widget=forms.Select(attrs={'class':'ddl'})
)
或
custom_serving_size = forms.ChoiceField(
choices=[(obj.id, `text user sees`) for obj in ServingSize.objects.all()],
widget=forms.Select(attrs={'class':'ddl'})
)