1

有没有办法将 QuerySet 转换为 django 中的 Q 对象?

我的具体动机:我想从另一个 QuerySet (qs_B) 中减去一个 QuerySet (qs_A)。我能想到的唯一方法是使用 exclude() 和等效于 qs_A 的 Q 对象。

例子:

def my_function(qs_A, qs_B):
    # Here I need to transform qs_A to a Q object q_obj_A
    qs_new = qs.exclude(q_obj_A)
    return qs_new
4

1 回答 1

5

您不需要 Q 对象。只需排除第二个查询集:

qs = qs_a.exclude(id__in=qs_B)
于 2010-07-09T20:10:55.907 回答