【问题标题】:Django ModelAdmin Fieldset within fieldset字段集中的 Django ModelAdmin 字段集
【发布时间】:2014-02-02 13:17:42
【问题描述】:

我被要求创建一个具有以下布局的管理页面:

  • 字段集 1 名称

    • 第 1 节名称
      • 字段 1
      • 字段 2
  • 字段集 2 名称

    • 第 2 节名称
      • 字段 3

等等。

显然,我可以使用 ModelAdmin.fieldsets 创建字段集,但它是我遇到困难的内部分组或“部分”。要显示的字段都属于同一个模型,所以我不能用 Inlines 实现这一点(或者至少我相信我不能)。

我很确定实现我想要的唯一方法是创建一个自定义模板并绕过 Django 的默认可爱,但理想情况下我想扩展 Django Admin,因为这个 Fieldset -> Section -> 字段布局几个模型都需要,如果可以的话,我不想为每个模型手动生成表单和模板。

谁能指出我实现上述布局的正确方向?

谢谢

【问题讨论】:

    标签: python django


    【解决方案1】:

    不幸的是你运气不好,Django 管理员does not support nested fieldsets 没有办法输出其他结构标签,除非通过自定义模板。

    你可以看看:
    http://django-betterforms.readthedocs.org/en/latest/basics.html

    它支持嵌套字段集,因此此代码将在您自定义管理模板时为您提供帮助。

    【讨论】:

      【解决方案2】:

      如果您尝试创建类似这样的页面:

      然后您可以将以下内容添加到您的管理文件中:

      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

      【讨论】:

        猜你喜欢
        • 2011-03-31
        • 2021-06-08
        • 2013-01-24
        • 2014-05-07
        • 1970-01-01
        • 2010-11-29
        • 2011-08-06
        • 2020-12-31
        • 1970-01-01
        相关资源
        最近更新 更多