如何获得 Django 中两个查询集的差异?

新手上路,请多包涵

我必须查询集。所有列表和订阅列表

alllists = List.objects.filter(datamode = 'A')
subscriptionlists = Membership.objects.filter(member__id=memberid, datamode='A')

我需要一个名为 unsubscriptionlist 的查询集,它拥有 alllists 中除订阅列表中的记录之外的所有记录。如何做到这一点?

原文由 Rajasekar 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 374
1 个回答

从 Django 1.11 开始,QuerySets 在其他新方法中有一个 difference() 方法:

 # Capture elements that are in qs_all but not in qs_part
qs_diff = qs_all.difference(qs_part)

另请参阅: https ://stackoverflow.com/a/45651267/5497962

原文由 markus-hinsche 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏