Django如何使用MultipleChiceField
form.py:Django如何使用MultipleChiceField,django,Django,form.py: CHECKBOX_CHOICES = ( ('Value1','Value1'), ('Value2','Value2'), ) class EditProfileForm(ModelForm): interest = forms.MultipleChoiceField(required=False, widget=CheckboxSelectMultiple
CHECKBOX_CHOICES = (
('Value1','Value1'),
('Value2','Value2'),
)
class EditProfileForm(ModelForm):
interest = forms.MultipleChoiceField(required=False,
widget=CheckboxSelectMultiple(),
choices=CHECKBOX_CHOICES,)
def save(self, *args, **kwargs):
u = self.instance.user
u.interest = self.cleaned_data['interest']
u.save()
profile = super(EditProfileForm, self).save(*args,**kwargs)
return profile
它在数据库中保存为[u'value1',u'value2']
现在,我如何在模板中只渲染为类似字符串的value1、value2而不显示[u'],或者有更好的方法将值保存为字符串?谢谢您的回答,但它仍然将[u'value1',u'value2']保存到数据库中。我猜我没有将值正确保存到数据库中,因为当我对它们进行迭代时,我收到一封信。我的编程知识很差,我知道这只是保存一个unicode字符串,而不是数组。有人知道如何将其正确保存到数据库中吗?通过在视图中执行ast.literal\u eval来解决。并使用模板进行迭代。
u.interest = u','.join(self.cleaned_data['interest'])