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

4

这段代码显示的是类对象: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个回答

11

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

```python def __str__(self): return 'My Custom Home Object' ```
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])

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

例如: 1:示例段...

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

如果您希望在面板上进行尝试,可以在admin.py中尝试类似以下内容。

from django.contrib import admin

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

admin.site.register(Home,HomeAdmin)

4
为什么你不在admin.py尝试这个:
from django.contrib import admin


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

admin.site.register(Home, HomeAdmin)

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

此外,如果您在管理员中无法查看图像字段中的图像,请查看以下问题的答案: Django Admin Show Image from Imagefield


请让我知道如果你需要其他的东西。 - Mohammad Abouchama

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接