问题标签 [django-q]

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 投票
1 回答
4415 浏览

python - 对 Django Q 对象执行逻辑异或

我想对对象执行逻辑异或(XORdjango.db.models.Q,使用运算符模块将模型字段的选择限制为外键的子集。我在 Django 1.4.3 和 Python 2.7.2 中这样做。我有这样的事情:

AUTHORIZED_AUTHORS是现有组名的列表。

但这不起作用,因为Q对象不支持^运算符(仅支持docs|中的和&运算符)。来自堆栈跟踪的消息(部分)如下:

因此,受这个答案的启发,我尝试为我的特定查找实现 XOR。它不是很灵活,因为查找是硬编码的(我需要在例如...kwargs的参数中使用)。query_xor我最终做了这样的事情:

它可以按我的意愿工作,但在我看来,我似乎不是 pythonic(尤其是query_xor_group方法)。会有更好(更直接的方式)这样做吗?

基本上,我的问题可以去掉limit_choices_to部分,总结为:

如何django.db.models.Q以 Djangonic 方式对一组对象进行按位异或?

0 投票
2 回答
5271 浏览

python - 在 Django 中使用 Q() 动态构建复杂查询

第一个例子:

第二个例子:

这种技术可能非常有用,例如在 eBay 上为带有条件过滤器的页面构建查询。

但是,据我所知,这件事没有记录在案,所以对于这件事有哪些最佳实践,不会从支持中删除,也不会混淆阅读我的代码的人?

ps
还有 - 将“&”运算符与 Q() 对象一起使用是不是很好的解决方案?在 Django-docs 中,我一无所获!

0 投票
1 回答
89 浏览

python - 使用 Q 过滤 django 数据

www.example.com/?cat=0&from=300&to=600

如果第一个是category- from_p并且to_p标准不起作用。如何解决?它仅适用于一个标准。如果用户设置(例如)category并按from_p这些标准搜索,我需要。

0 投票
1 回答
881 浏览

django - Django 1.4 带查询的分页

我正在尝试按照https://docs.djangoproject.com/en/dev/topics/pagination/中的示例使分页工作。我正在使用查询,似乎无法将查询数据传递给连续的页面。第一页按预期返回我的查询限制为 10 个结果,但下一页只返回一个空白表。

  • 版本:Django 1.4.4 和 python 2.6.6

代码:

网址:

当我排除查询并显示所有结果分页工作时,我的模板设置正确 - 例如:

提前致谢。

搜索功能:

0 投票
1 回答
125 浏览

python - 姜戈。Q 分类查询

我有一个类别模型定义为:

类别最多可以有 3 级父级(类别 1 -> 类别 2 -> 类别 3 -> 类别 4)

我需要查看数据库中的所有项目,但当且仅当位置 == Ebay 时才排除基本类别 14。

我正在使用:

如果一个item的category是14->15->42->16,返回的category编号是16。我需要第一个category level,但是不知道有多少个parent。可以没有,或最多 3 个父母。

我将如何编辑查询以回顾我的类别树?

0 投票
2 回答
4228 浏览

django - 使用带有外键的 Q 对象定义 django 查询集

示例模型:

和一些示例数据:

我想获取所有作者姓名包含“111”和“333”的书籍(所以所有至少有 2 个作者的书籍:第一个名称为 111,第二个名称为 333)

我可以通过使用链查询来达到这个目标:

它返回两本书 id: 3 和 4

有没有办法通过使用 Q 对象来达到上述目标?

0 投票
2 回答
246 浏览

python - 带有Q和多个类别的django查询

我有以下模型结构:

我想找到所有带有火腿或奶酪或两者的披萨,这是标准的 django 方式吗?: from django.db.models import Q

如果我有一个浇头列表,我如何以编程方式进行操作,例如?:

0 投票
1 回答
219 浏览

python - 是否可以在 Django 1.5.1 中将动态属性与 Q 对象一起使用?

我正在使用django-transmeta翻译字段,我需要使用这些翻译字段执行一些搜索。

假设我们有一个模型,其中包含一个名为 的可翻译字段translated_field

第一种方法中,我们可以像往常一样思考一些事情,例如:

第二种方法是硬编码所有可能的语言版本。例如:

这第二个选项似乎真的是硬编码的,我想知道是否有可能的第三个选项做类似的事情:

甚至更好... **kwargs 有没有使用 Q 对象的选项?

谢谢!

0 投票
1 回答
627 浏览

django - Django ORM - 通过多个相关对象和 Q 查询选择

好的,我们有三个表:Order、Product 和 OrderProduct。我想查找Orders有哪些产品,我写了如下函数:

此代码将导致如下所示的 sql 查询:

有什么办法可以让 Django 的 ORM 写出下面的查询?

有什么建议可以做得更好吗?

0 投票
1 回答
1003 浏览

django - django:使用 Q 对象

我有这两个查询:

如果我这样做,gifts = gifts | gifts1我会收到以下错误:

错误用户定义函数引发异常

如果我使用这样的 Q 对象:

我再次得到同样的错误

这里的条目查询是

有人可以告诉我我哪里错了吗