Django:生成具有重复项的queryset

时间:2018-07-19 12:43:42

标签: django unit-testing django-queryset

我需要使用重复项创建一个查询集,以便在Django中进行测试,例如:

<QuerySet [<MyModel: instance1>, <MyModel: instance1>, <MyModel: instance2>]>

最简单的方法是什么?

1 个答案:

答案 0 :(得分:1)

您可以将Django的union函数与all=True参数一起使用,例如:

MyModel.objects.filter(...).union(MyModel.objects.filter(...), all=True)

然后,您可以使用一些会导致非空交集的条件,例如:

MyModel.objects.filter(pk=1).union(MyModel.objects.filter(pk__in=[1, 2]), all=True)