如何将多个 QuerySet 编织成一个?我的意思是将它们加入另一个 QuerySet 交替它们的元素,而不评估每个单独的 QuerySet 以保持性能。例如:
#QuerySets to be weaved
q1 = Model.objects.filter(...)
q2 = Model.objects.filter(...)
q3 = Model.objects.filter(...)
#The QuerySet in which the previous ones are weaved
WeaveQuery = ????
所以 WeaveQuery 中的第一个元素属于 q1,第二个属于 q2,第三个属于 q3,第四个属于 q1...等等。编织的 QuerySet 可能具有不同的长度,因此如果编织的查询集之一用完元素,则不应在 WeaveQuery 中重复元素。
相关分类