我被要求创建的是一个管理页面,其中包含以下布局:
Fieldset 1名称
Fieldset 2名称
等等。
我可以使用ModelAdmin.fieldsets创建字段集,但它的内部分组或“部分”我遇到了困难。要显示的字段都属于同一个模型,所以我无法通过Inlines实现这一点(或者至少我相信我不能)。
我很确定实现我想要的唯一方法是创建一个自定义模板并通过传递Django的默认可爱但我理想的是扩展Django Admin因为这个Fieldset - >部分 - >几个模型将需要字段布局,我不想手动生成表单和每个模型的模板,如果我能帮忙的话。
有人能指出我正确的方向来实现上述布局吗?
由于
答案 0 :(得分:1)
不幸的是,你运气不好,Django管理员does not support nested fieldsets无法输出其他结构标签,除非通过自定义模板。
你可以看看:
http://django-betterforms.readthedocs.org/en/latest/basics.html
它支持嵌套的字段集,因此在您自定义管理模板时,此代码将为您提供帮助。
答案 1 :(得分:0)
如果您要创建一个类似这样的页面:
然后,您可以将以下内容添加到您的管理文件中:
from django.contrib import admin
class FlatPageAdmin(admin.ModelAdmin):
fieldsets = (
(None, {
'fields': ('url', 'title', 'content', 'sites')
}),
('Advanced options', {
'classes': ('collapse',),
'fields': ('registration_required', 'template_name'),
}),
)
有关更多详细信息,您可以查看此page