问题标签 [django-filter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
26988 浏览

django - 将 'django-filter' 与 CHOICES 字段一起使用 - 需要“任何”选项

我正在使用非常酷的 django-filter (通过: http: //github.com/alex/django-filter)并且似乎无法将我的头包裹在文档上,或者可能只需要一点提升。

当我在对象列表页面上显示过滤器表单时,对于 FK 字段,我会得到包含“-----”的下拉列表,这会导致“任何”类型的过滤器。但是我在该模型的某个字段中设置了一些选项,并且我希望获得相同的“任何”类型选项。这是来自 models.py 的相关示例部分:

当我显示过滤器表单时,'assigned_to'获得一个 'any' 选项,并列出可用用户。但是,该'status'字段仅限于实际“_CHOICES”中列出的选项。

如何根据 _CHOICES 向字段添加“任何”选项?

0 投票
2 回答
1841 浏览

django - Django 过滤器 - 在 ManyToManyField 上使用 AllValuesFilter(带有 LinkWidget)

这是我的第一个 Stack Overflow 问题,所以如果我做错了什么,请告诉我。

我希望使用精彩的 django-filters 应用程序在 ManyToMany 字段上创建一个 AllValues 过滤器。基本上,我想创建一个看起来像在 Admin 中的过滤器,所以我也想使用 LinkWidget。

不幸的是,如果我以标准方式尝试此操作,则会收到错误(无效的字段名称:'operator'):

我通过使用硬编码的多对多关系创建自己的过滤器来解决这个问题:

我是 Python 和 Django 的新手。有人能想到一种更通用/优雅的方式吗?

0 投票
3 回答
1401 浏览

python - 隐藏在 django-filter 中产生零结果的过滤器项目

我对 django-filter 应用程序有疑问:如何隐藏将产生零结果的项目。我认为有一个简单的方法可以做到这一点,但我知道如何。

我在 ModelChoiceFilter 上使用 LinkWidget,如下所示:

我需要做的是过滤查询集并仅选择将产生至少一个结果的提供者,并排除其他结果。有办法做到这一点吗?

0 投票
2 回答
841 浏览

django - 对外键进行注释时出现 FieldError

我有一个类似于以下内容的模型文件:

对于每场比赛,我都试图计算有标题的通知记录。所以我的电话看起来像

这会不断抛出 FieldError。我已将查询简化为

而且我仍然得到相同的 FieldError ......我在其他情况下看到了这项工作(其他文档,像这样的其他 SO 问题),但我无法弄清楚为什么我会收到错误。

返回的具体错误如下:

无法将关键字“通知”解析为字段。选择是:(匹配模型中的所有字段)

有没有人知道为什么我不能让这个注释跨表工作?在查看了其他 SO question 和我看到的各种 Django 文档后,我感到很困惑。

编辑:我正在使用 Django 1.1.1

编辑 2:我尝试将 matchId 字段重命名为仅匹配...并且我已经消除了 WithDate 类,将 addedDate 和 modifiedDate 直接添加到模型类定义中。这些更改都没有消除错误消息。

编辑 3:在逐个重建我的模型文件后,我意识到包含 Alex Gaynor 的 django-filter 插件会导致问题。起初我认为这无关紧要,但既然现在如此,我已经包含了导致错误的 Match FilterSet 类。当我删除 MatchFilter 类时,它工作得很好。我正在尝试通过 django-filter 代码来弄清楚为什么会发生这种情况,但是如果其他人有想法,我会非常感兴趣!

0 投票
1 回答
3397 浏览

python - 使用 django-filters 将多个过滤器合并为一个 filter()

我正在使用django-filter应用程序。但是有一个问题我不知道如何解决。这与 django 文档中描述的几乎完全相同:

https://docs.djangoproject.com/en/1.2/topics/db/queries/#spanning-multi-valued-relationships

我想进行查询,在其中选择标题中包含“Lennon”的条目于 2008 年发布的所有博客,例如:

不要选择标题中包含“Lennon”条目和 2008 年发布的另一个条目(可能相同)的博客:

但是,如果我将过滤器设置为有两个字段(没关系 __contains x __exact,只是一个示例):

django-filter 将生成后者:

有没有办法将两个过滤器组合成一个过滤器字段?

0 投票
0 回答
45 浏览

django - django 自定义管理器结果重新排列

我有所有国家的名单。当我需要获取英语国家的列表时,我会这样做:

效果很好。但是,我想说美国和加拿大始终出现在列表的开头,因为我的主要关注点是北美。

现在,我应该在自定义管理器中进行查询并从列表中删除这两个国家并在开头插入它们,还是应该有一个模板标签,它接受一个列表并返回一个重新排列的列表。

使用 sort_by 来做这件事会很好,而且我不介意重写一些函数来完成工作。

示例代码表示赞赏。

0 投票
3 回答
1983 浏览

django - 如何同时使用 DISTINCT 和 ORDER BY RANDOM 进行 SELECT?

场景:

我在视图中有一个模型,我正在使用 django-filters,所以我需要创建一个由 django-filters 过滤并随机排序的查询集。

问题: django-filters 向 SQL 添加了一个 DISTINCT,例如:

但这会为 postgresql 生成一个异常:

错误:对于 SELECT DISTINCT,ORDER BY 表达式必须出现在选择列表 SQL 状态:42P10 字符:1992

我认为可能存在将随机添加到选择中的任何方式,有什么想法吗?

0 投票
2 回答
4352 浏览

django - Django REST 框架 - 过滤

我想用多个查询过滤多个字段,如下所示:

是否有任何内置方式,我查看了 django-filters 但它似乎有限,我想我必须在我的 api 视图中手动执行此操作,但它变得混乱,过滤过滤器上的过滤器

0 投票
1 回答
1305 浏览

python - django queryset 获取组的平均值

这有点棘手!

我有一个数据库,可以跟踪每个用户每小时下载 KB 的使用情况(每天 24 个条目);看起来像这样。。

用户时间戳使用

用户 1 2013-0501 14:00:00 229

用户2 2013-0501 14:00:00 103

用户 1 2013-0501 13:00:00 220

用户2 2013-0501 13:00:00 103

现在我需要每个用户每天的平均使用量

有什么方法可以为此创建查询集吗?

我想这样做..(但无法执行)

对于每个用户(捆绑)或获取同一天的条目并将它们平均..但这就是我所得到的!

如何获得“myValue.annotate(dcount=Count('timestamp__day'))”的计数或更好的列表并获得该捆绑包的平均值..

感谢您的帮助,如果这令人困惑,请告诉我!

0 投票
1 回答
3912 浏览

django - Django比较两个对象的值

我有一个看起来像这样的 Django 模型:

对于每个 Response 对象,有两个 qid = "risk" 的编码对象,一个用于 coder 3,一个用于 coder 4。我想要做的是获取所有 Response 对象的列表,其中值的差异coder 3 和 coder 4 之间的值大于 1。 value 字段存储数字 1-7。

事后我意识到将 value 设置为 CharField 可能是一个错误,但希望我能解决这个问题。

我相信类似下面的 SQL 会做我正在寻找的东西,但我宁愿用 ORM 做这个