3

我有一个 Django 管理控制面板,在每个对象列表中都有很多列表过滤器。我希望能够通过单击按钮清除所有过滤器,但如果它已经存在于 Django 中,则找不到此功能在哪里。

我正在考虑的路线(但无法弄清楚):

  1. 将面包屑链接中的最后一项设为完整列表
  2. 将直接超链接作为过滤器列表选项
  3. 找到某种方法来访问所有查询选项并将它们删除或简单地返回一个空白(queryset.all() 不起作用;我可能是在叫错树。)
  4. 那种东西应该已经存在了!了解如何使用它。

有谁知道如何做到这一点?我整天都在试图弄清楚。

4

1 回答 1

0

如果您至少有一个条目search_fields,因此在您的管理员更改列表页面上显示了一个搜索框,如果您有任何有效的过滤器或搜索词,您应该会在其右侧看到显示与当前过滤器匹配的行数的信息和搜索条件。它的措辞类似于“5 个结果(总共 50 个)”。“总共 50 个”文本将链接到未过滤版本的列表,显示整个列表。可能分页,但所有过滤器都将被清除。

如果没有搜索框,这似乎不会自动公开。过滤器设置是 URL 查询字符串中的简单参数,因此应该很容易添加一个类似于在搜索框中删除查询字符串的链接,但是您必须了解一些有关管理模板的知识才能这样做. search_fields如果您有任何合理的搜索内容,设置条目可能更简单。

于 2013-09-12T03:59:04.093 回答