可以通过执行以下操作来限制QuerySet上的结果:
qs = MyModel.objects.all()[:3]
由于QuerySet通常是懒惰地进行评估,是否可以在迭代之前从qs
中删除此限制?
我希望像qs = qs[:]
或qs = qs[0:]
那样直截了当,但两者都不起作用。到目前为止,我唯一可以工作的是qs.query.clear_limits()
,但我不确定这是否是公共API的一部分(我不得不通过Django源代码来查找它)。
答案 0 :(得分:0)
就像Alasdair所说,似乎没有一个记录在案的公共API来清除限制。可能是因为这不是一件很常见的事情。
无论如何,由于它没有在任何地方记录,我认为它是“内部的”,如有更改,恕不另行通知。