编辑页选项
进入编辑页面
字段顺序
根据列表顺序指定编辑界面字段顺序
fields = ['字段1', '字段2', ...]
class AreaAdmin(admin.ModelAdmin): # 显示字段顺序 fields = ['parent', 'name']
浏览效果
字段分组
- 字段分组
fieldsets
与字段顺序fields
二选一使用 对字段进行分组管理,有如下两种写法
fieldsets = ( ('组1标题', {'fields':('字段1', '字段2')}), ('组2标题', {'fields':('字段3', '字段4')}), )
fieldsets = [ ('组1标题', {'fields':['字段1', '字段2']}), ('组2标题', {'fields':['字段3', '字段4']}), ]
class AreaAdmin(admin.ModelAdmin): # 字段分组:与fields二选一使用 fieldsets = [ ('基本', {'fields':['name']}), ('高级', {'fields':['parent']}), ]
浏览效果
关联对象
- 在一对多的关系中,可以在一端的编辑页面中编辑多端的对象
- 嵌入多端对象的方式包括表格、块两种
- 类型
InlineModelAdmin
:表示在模型的编辑页面嵌入关联模型的编辑- 子类
StackedInline
:以块的形式嵌入 - 子类
TabularInline
:以表格的形式嵌入
- 子类
在
admin.py
文件中,创建AreaStackedInline
类,继承自admin.StackedInline
class AreaStackedInline(admin.StackedInline): model = AreaInfo #关联子对象 extra = 2 #额外编辑2个子对象
class AreaAdmin(admin.ModelAdmin): # 嵌入关联子对象 inlines = [AreaStackedInline]
浏览效果:以块形式嵌入
浏览效果:以列表形式嵌入