更改Django的管理员创建/更改表单布局

时间:2016-10-20 09:11:54

标签: django django-admin

我有一个Student的简单模型,该模型通过admin.ModelAdmin注册到管理员。

此模型的管理员更改形式如下所示: Current look

我想稍微更改这个表单的布局,以便一些字段可以在同一行中,就像这样(在Paint中编辑): enter image description here

在没有覆盖默认模板的情况下,我能做些什么吗?如果没有,最好的方法是什么?

提前致谢。

2 个答案:

答案 0 :(得分:1)

您可以使用字段集来完成此操作。

class StudentAdmin(admin.ModelAdmin):
    fieldsets = (
        (None, {
            'fields': (('no_student', 'last_name', 'first_name), 'course', 'sex', 'ID')
        }),
        ...
)

请注意我已经包裹了应该在同一元组中以单行显示的字段。

Reference

答案 1 :(得分:1)

您可以使用fields中的ModelAdmin属性,如下所示:

@admin.register(Student)
class StudentAdmin(admin.ModelAdmin):

    fields = (
        ('no_student', 'last_name', 'first_name),
        'course',
        'sex',
        'id'
    )

分组在一个子元组或子列表中的字段将显示在一行中。您可以创建多个这样的组。