Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django查询问题_Django_Many To Many_Intersection_Django Queryset - Fatal编程技术网

Django查询问题

Django查询问题,django,many-to-many,intersection,django-queryset,Django,Many To Many,Intersection,Django Queryset,如果在Django中有两个不同的查询集,它们都表示同一模型的多个关系,那么如何找到交叉点?将查询集合并到列表中,然后创建一个集合,您将转换回列表: from itertools import chain merged_qs = chain(queryset1, queryset2) intersection_list = list(set(list( merged_qs ))) 按同一组键对查询集排序 对两个查询集调用迭代器() 将迭代器从该答案馈送到intersect函数: 您可以通过使

如果在Django中有两个不同的查询集,它们都表示同一模型的多个关系,那么如何找到交叉点?

将查询集合并到列表中,然后创建一个集合,您将转换回列表:

from itertools import chain
merged_qs = chain(queryset1, queryset2) 
intersection_list = list(set(list( merged_qs )))
  • 按同一组键对查询集排序
  • 对两个查询集调用迭代器()
  • 将迭代器从该答案馈送到intersect函数:

  • 您可以通过使用IN运算符创建子查询来避免该问题: