不确定如何更新ModelChoiceField上的标签
型号:
class Category(models.Model):
categoryText = models.CharField(max_length=50)
parentCat = models.ForeignKey('self',null=True,blank=True)
形式:
class CategoryForm(forms.Form):
category = forms.ModelChoiceField(queryset=Category.objects.all())
现在,当我显示表单时,我将“Category Object”作为下拉列表的标签。我喜欢将标签更改为categoryText中存储的内容。
我该怎么做?
答案 0 :(得分:2)
class Category(models.Model):
categoryText = models.CharField(max_length=50)
parentCat = models.ForeignKey('self',null=True,blank=True)
def __unicode__(self):
return self.categoryText
当Django想要打印特定模型对象/表行的人性化版本时(在管理员中,或作为表单标签),unicode方法在内部使用。您应该为您创建的每个模型编写一个unicode方法。