2011-02-03 67 views
0

我想显示ModelMultipleChoiceFields为CheckboxSelectMultiple。现在它确实呈现复选框,但是与对象一起呈现。我想显示对象描述,以便用户知道他们正在选择什么。Django:ModelMultipleChoiceField显示描述与对象

如何迭代食物风格来提取数据?这是我尝试过,但迄今为止被扔TemplateSyntaxError“夹缝AttributeError的同时呈现:‘发电机’对象有没有属性‘所有’”。

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) 

回答

3

像你需要实现统一的声音,我 (self)放在你的Model对象上,然后返回你想要在窗体中显示的任何字符串。