Django 什么';检查一个查询集是否是另一个查询集的子集的最佳方法是什么?

Django 什么';检查一个查询集是否是另一个查询集的子集的最佳方法是什么?,django,Django,如果有两个查询集q1和q2,检查q1是否是q2的子集的最佳方法是什么?或者我必须迭代它们的值吗 q1_id = q1.values_list('id', flat=True) q2_id = q2.values_list('id', flat=True) all([x in q2 for x in q1]) 您可以使用set来检查: q1_id = set(q1.values_list('id', flat=True) q2_id = set(q2.values_list('id', flat

如果有两个查询集
q1
q2
,检查
q1
是否是
q2
的子集的最佳方法是什么?或者我必须迭代它们的值吗

q1_id = q1.values_list('id', flat=True)
q2_id = q2.values_list('id', flat=True)
all([x in q2 for x in q1])

您可以使用
set
来检查:

q1_id = set(q1.values_list('id', flat=True)
q2_id = set(q2.values_list('id', flat=True)
issubset = q1_id.issubset(q2_id)