如何在django admin中显示我所有模型的字段?

时间:2019-10-17 12:10:34

标签: python django

此代码显示如下对象:Home Object(1)Home Object(2),但我想在django管理页面中显示所有模型字段。我该怎么做?

我是django的初学者,这是我的第一个项目。

models.py

class Home(models.Model):
    image=models.ImageField(upload_to='home')
    paragraph=models.TextField()
    created=models.DateTimeField(auto_now_add=True)

admin.py

admin.site.register(Home)

2 个答案:

答案 0 :(得分:2)

如果要将显示从Home Object(1)更改为其他内容,可以通过在模型中定义如下方法来实现:

class Home(models.Model):
    image=models.ImageField(upload_to='home')
    paragraph=models.TextField()
    created=models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return "{}:{}..".format(self.id, self.paragraph[:10])

这将返回对象ID,其中包含您在管理面板上段落中的前10个字符:

例如: 1:Example par...

单击该对象后,您将获得对象详细信息。

如果要在面板上显示,可以在admin.py

中尝试
from django.contrib import admin

class HomeAdmin(admin.ModelAdmin):
    list_display = ('image', 'paragraph','created',)

admin.site.register(Home,HomeAdmin)

答案 1 :(得分:0)

为什么不在admin.py中尝试此操作?

from django.contrib import admin


class HomeAdmin(admin.ModelAdmin):
    list_display = ('paragraph', 'created', 'image', )

admin.site.register(Home, HomeAdmin)

这应该做的是在管理员中查看Home对象列表时显示字段及其值。因此,这仅适用于管理员中的列表视图。

此外,如果您在admin的“图像”字段中查看图像时遇到问题,请检查以下问题的答案: Django Admin Show Image from Imagefield