Django 在没有 Q 的情况下组合两个查询
Django combine two queries without Q
这是我目前遇到的问题:
我使用 Q() 筛选模型并获得 x 个结果。然后我检查 x 结果以确定某些条件。根据这些条件,我执行另一个查询并获得 y 个结果。正是在这一点上,我想合并 x 结果和 y 结果,然后对两者执行过滤。请记住,这两个查询属于同一模型。
由于在获得查询 1 的结果之前无法执行查询 2,因此无法使用 Q() 组合这 2 个查询。
有什么方法可以将结果组合在一起吗?
基本上我想要实现的目标看起来像这样:
all_results = x_results.extend(y_results)
all_results.filter(price = 500)
我想你可以这样做
all_results = x_results | y_results
这是我目前遇到的问题:
我使用 Q() 筛选模型并获得 x 个结果。然后我检查 x 结果以确定某些条件。根据这些条件,我执行另一个查询并获得 y 个结果。正是在这一点上,我想合并 x 结果和 y 结果,然后对两者执行过滤。请记住,这两个查询属于同一模型。
由于在获得查询 1 的结果之前无法执行查询 2,因此无法使用 Q() 组合这 2 个查询。
有什么方法可以将结果组合在一起吗? 基本上我想要实现的目标看起来像这样:
all_results = x_results.extend(y_results)
all_results.filter(price = 500)
我想你可以这样做
all_results = x_results | y_results