【问题标题】:Django 2.2 How to disable checkboxes in list viewDjango 2.2 如何在列表视图中禁用复选框
【发布时间】:2020-02-27 17:14:48
【问题描述】:

Django 2.2

我有一个由 admin.py 类控制的列表视图。没有自定义模板,全部默认。我可以控制表中的哪些字段应该显示在视图中: fields = ('myfield1','myfield2', ...).

列表中每一行的第一列都有一个复选框,源代码如下:

    <td class="action-checkbox">
      <input type="checkbox" name="_selected_action" value="123" class="action-select">
    </td>

我的问题是:

  1. 如何禁用这些复选框(最好从 Django 代码中,不引入自定义模板)?

  2. 可以为某些复选框完成(假设我有一个我不想看到复选框的行的 pk id 列表。)

【问题讨论】:

  • 如果您在ModelAdmin 中设置actions = None,复选框和操作下拉菜单将消失(未禁用)。如果您真的只想禁用某些复选框,我相信您需要添加一些 javascript 代码。
  • @Chris 将 actions = None 放入 ModelAdmin 中 admin.py 在我的 Django 2.2 中无效。也许它需要放在 ModelAdmin 类的特定方法中?
  • 我想你误会了。查看docs 以了解其放置位置和方式
  • @Chris 不,我遵循了同一个文档,但没有任何效果。必须是特定于我的设置。
  • 你在使用 django 开发服务器吗?

标签: django list checkbox view disable


【解决方案1】:

您可以使用这些复选框删除项目,但如果您想自定义自己的管理页面以覆盖它

您可以使用此文档https://docs.djangoproject.com/en/3.0/ref/contrib/admin/#admin-overriding-templates

【讨论】:

  • 我知道我可以使用这些复选框删除项目,我的问题是如何摆脱它们。链接下的文档没有告诉我。
  • 你应该在下面的 html 页面中覆盖结果 div,django docs 上的方式是link
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-30
  • 1970-01-01
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-03
相关资源
最近更新 更多