【发布时间】:2014-07-08 00:58:15
【问题描述】:
我必须将下面的查询集合并到一个列表中:
result_list_1 = Col.objects.defer("tags").filter(producer__username__icontains=crit)
result_list_2 = Col.objects.defer("tags").filter(name__icontains=crit)
result_list_3 = Col.objects.defer("tags").filter(description__icontains=crit)
result_list_4 = Col.objects.filter(tags__name__icontains=crit)
...
每个 result_list 都包含项目,这些项目有一个唯一的数字 id,我可以使用它来确保没有重复。
我不能使用 |在查询 DB 或 Q 对象时。
如何将结果集合并到一个列表中?
【问题讨论】:
-
谢谢亚历克斯,我看到了那个。评论中有关于合并元素不重复的参考,但不是很清楚。
-
感谢 Steinar,没有 Q 对象。
-
但是为什么呢?如果您就您的问题向我们提供一些背景信息,那么为您提供解决方案可能会更容易。
-
上面的代码示例只显示了 4 个查询集,但实际上我有更多,其中一些具有更复杂的过滤条件。它们不能组合。我必须合并生成的查询集。