如何在Django管理中以表格格式显示add model?

2024-05-16 07:02:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚开始和Django写我的第一个应用程序-一个家庭琐事图表管理器。在本教程中,它将向您展示如何以表格形式add related objects。我不关心相关对象,我只想以表格形式添加常规对象。这就是我的管理员py在

from chores.models import Chore
from django.contrib import admin

class ChoreAdmin(admin.ModelAdmin):
    fieldsets = [ 
        (None,              {'fields': ['description', 'frequency', 'person']})
    ]   

admin.site.register(Chore, ChoreAdmin)

我想当我点击“添加杂务”时,而不是看到:

^{pr2}$

我想让它显示:

Description: __________ | Frequency: _______ | Person: _____

这是一件小事,还是需要大量的定制工作?如果很容易,我该怎么做?在

谢谢!在


Tags: 对象djangofromimport应用程序管理器admin家庭
3条回答

{可能是新用户的阅读,但这是新设置的}

以上环节基本如下:


field_options字典可以有以下键:

fields:要在此字段集中显示的字段名元组。此密钥是必需的。在

示例:

{
'fields': ('first_name', 'last_name', 'address', 'city', 'state'),
}

就像使用fields选项一样,要在同一行显示多个字段,请将这些字段包装在它们自己的元组中。在本例中,first_namelast_name字段将显示在同一行:

^{pr2}$

尝试一下

class ChoreAdmin(admin.ModelAdmin):
 list_display = ('description', 'frequency', 'person')
 list_editable = ('description', 'frequency', 'person') 

这将使您能够以表格形式编辑您的所有条目(如果我正确地阅读了文档)。。。在

据我所知,这里没有默认的modeldadmin选项,但是您可以更改管理站点的CSS或根据每个模型修改change_form.html的布局。在

您可以修改管理站点以使用您的自定义CSS(在每个模型的基础上,将ModelAdminMedia类进行子类化)并修改它(可能使用body.change-formCSS类),并确保字段集彼此相邻。在

您也可以在templates目录中创建一个名为/admin/chores/chore/change_form.html的模板。不幸的是,创建实际表单元素的部分不在单独的块中,因此您应该用您的自定义内容覆盖content块,复制大量django/contrib/admin/templates/admin/change_form.html文件。在

请参考relevent documentation了解更多信息。在

相关问题 更多 >