我试图将ModelMultipleChoiceFields显示为CheckboxSelectMultiple。现在它确实渲染了复选框,但是使用了对象。我想展示对象描述,以便用户知道他们在选择什么。
如何迭代食物风格来提取数据?这是我到目前为止所尝试但是抛出了TemplateSyntaxError。“渲染时捕获了AttributeError:'generator'对象没有属性'all'”
foodstyles = forms.ModelMultipleChoiceField(
label=_("Types of food you like"),
widget=forms.CheckboxSelectMultiple, queryset=FoodStyle.objects.all(),
required=True)
def __init__(self, *args, **kwargs):
super(ProfileForm, self).__init__(*args, **kwargs)
foodstyles = FoodStyle.objects.all()
self.fields['foodstyles'].queryset = (
(r.description) for r in foodstyles)
答案 0 :(得分:3)
我觉得你需要在Model对象上实现 unicode (self),并返回你希望在表单中显示的任何字符串。