如何在Django Admin中默认配置列不可见

发布于 2025-01-23 05:15:46 字数 497 浏览 0 评论 0原文

我想隐藏一列并使该列可见,但是如果用户想要用户查看列,我尝试过这种方式,但没有用我使用。

Admin.py

class ProductAdmin(TimestampedModelAdminMixin, ConfigurableColumnsMixin, admin.ModelAdmin):


list_display = [
           "id",
          "comment",
           "active",
          ]

我以这种方式尝试过,但没有起作用。

 def get_form(self, request, obj=None, **kwargs):
    form = super(ProductAdmin, self).get_form(request, obj, **kwargs)
    del form.base_fields["comment"]
    return form

I want to hide one column and make the column visdible but if user want the user view the column, i tried this way but did not worked forr me.

admin.py

class ProductAdmin(TimestampedModelAdminMixin, ConfigurableColumnsMixin, admin.ModelAdmin):


list_display = [
           "id",
          "comment",
           "active",
          ]

I tried with this way but did not worked.

 def get_form(self, request, obj=None, **kwargs):
    form = super(ProductAdmin, self).get_form(request, obj, **kwargs)
    del form.base_fields["comment"]
    return form

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

关于从前 2025-01-30 05:15:46

您可以在管理类中指定要在fieldset中显示的字段。
您可以参考文档

fieldset(来自文档)的通用语法(从文档)

class FlatPageAdmin(admin.ModelAdmin):
    fieldsets = (
    (None, {
        'fields': ('url', 'title', 'content', 'sites')
    }),
    ('Advanced options', {
        'classes': ('collapse',),
        'fields': ('registration_required', 'template_name'),
    }),
)

中,您的情况中的代码为 - :

class ProductAdmin(TimestampedModelAdminMixin:
    fieldsets = (
    (None, {
        'fields': ('id', 'active')
    })
    
    )

You can specify the fields that you want to show in the fieldset in the admin class.
You can refer to docs here

Generic syntax for fieldset (from the docs)

class FlatPageAdmin(admin.ModelAdmin):
    fieldsets = (
    (None, {
        'fields': ('url', 'title', 'content', 'sites')
    }),
    ('Advanced options', {
        'classes': ('collapse',),
        'fields': ('registration_required', 'template_name'),
    }),
)

The code in your case would be -:

class ProductAdmin(TimestampedModelAdminMixin:
    fieldsets = (
    (None, {
        'fields': ('id', 'active')
    })
    
    )
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文