【问题标题】:How can I let the user of an Django Admin Page control which list_display fields are visible?如何让 Django 管理页面的用户控制哪些 list_display 字段可见?
【发布时间】:2020-12-23 23:02:35
【问题描述】:

我有一个 ModelAdmin,在 list_display 中有一组字段。

我希望用户能够单击复选框以添加或删除这些字段。

有没有一种简单的方法可以做到这一点?我查看了小部件,但我不确定它们将如何更改 ModelAdmin 的 list_display

【问题讨论】:

  • 您可能需要先将用户的选择保存在数据库中的某个位置,然后覆盖 get_list_display() 方法

标签: python django


【解决方案1】:

我必须这样做

  1. 覆盖管理模板(并在 settings.py 中更改 TEMPLATES)。我添加了一个带有复选框的表单,以便用户可以设置字段
  2. 添加新模型和端点以更新它(模型存储要显示的字段,用户在新的管理模板中提交一组字段)
  3. 更新 admin.py,覆盖 get_list_display,使其根据更新的模型对象的状态设置字段

【讨论】:

    猜你喜欢
    • 2020-07-09
    • 2016-02-10
    • 2019-06-18
    • 2011-04-30
    • 2018-02-12
    • 2015-10-07
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    相关资源
    最近更新 更多