如何在Django查询集中找到不在另一个指定查询集中的实体?

dan*_*007 4 django django-queryset

我正在使用Django为教育机构开发课程注册网站.

假设我有两个Django查询集,一个包含占用会话1(集合A)的课程,另一个包含会话2中的课程(集合B):

A = session1.courses.all()
B = session2.courses.all()
Run Code Online (Sandbox Code Playgroud)

这两个查询集之间有很多重叠.

在集合B中获得课程集的有效方法是什么,但在集合A中却没有?

我相信这相当于从B组中取出两组的交集.

谢谢!

Mar*_*cin 15

A.exclude(pk__in = B) 应该管用