如何在外键下拉列表中显示属性值而不显示ParentEvent对象?

时间:2013-09-30 18:34:42

标签: python django django-models django-admin django-filters

我有以下模型:

class ParentEvents(models.Model):
    name=models.CharField(max_length=70)

class Event(models.Model):
    name = models.CharField(max_length=70)
    side_list = models.TextField()
    parent_event=models.ForeignKey('ParentEvents')

现在当我在admin.py中注册Event类时,它在外键的下拉列表中显示“ParentEventObjects”。 我如何更改它,以便它显示父事件的名称字段而不是ParentEventObjects。 提前谢谢:)

1 个答案:

答案 0 :(得分:2)

您需要为要显示的名称添加__unicode__属性。

class ParentEvents(models.Model):
    name=models.CharField(max_length=70)

    def __unicode__(self):
        return u"%s" % self.name

Event模型相同,因为您会遇到类似问题。

详细了解__unicode__ here