Django Admin显示外键值

时间:2018-02-02 21:22:01

标签: python django django-admin

我试图在Django管理面板中显示外键值。

admins.py:
class CateogoriesAdmin(admin.ModelAdmin):

list_display = ('category_name',)

class CateogoriesItemAdmin(admin.ModelAdmin):

list_display = ('category_name', 'item_name', 'item_description',)


Models.py:
class Category(models.Model):
    category_name = models.CharField(max_length=50)

class CategoryItems(models.Model):
    category_name = = models.ForeignKey(Categories, related_name='categoriesfk', on_delete=models.PROTECT)
    item_name = models.CharField(max_length=50)
    item_description = models.CharField(max_length=100)

使用上面的内容,我只是将Categories Object(1)作为值,我想在Django管理面板中显示实际值而不是对象(1),例如如果有一个名为" Bicycle"的类别,它应该显示Bicycle。

1 个答案:

答案 0 :(得分:3)

你必须告诉django在将对象类别表示为字符串时要显示什么。例如

class Category(models.Model):
    category_name = models.CharField(max_length=50)

    def __str__(self):
        return self.category_name