Skip to main content
 首页 » 编程设计

python之Django Admin 显示外键值

2024年08月16日35zfyouxi

我正在尝试在 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),例如如果有一个名为“自行车”的类别,它应该显示自行车。

请您参考如下方法:

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

class Category(models.Model): 
    category_name = models.CharField(max_length=50) 
 
    def __str__(self): 
        return self.category_name