【发布时间】:2015-12-06 08:08:41
【问题描述】:
我知道常规查询集或迭代器查询集方法会一次性评估并返回整个数据集。
例如,拿这个:
my_objects = MyObject.objects.all()
for rows in my_objects: # Way 1
for rows in my_objects.iterator(): # Way 2
问题
在这两种方法中,所有行都是一次性获取的。在 djago 中是否有任何方法可以从数据库中一一获取查询集行。
为什么会有这个奇怪的要求
目前我的查询获取让我们说 n 行但有时我得到Python and Django OperationalError (2006, 'MySQL server has gone away')。
为了解决这个问题,我目前正在使用一个奇怪的while 循环逻辑。所以想知道是否有任何 native 或 inbuilt 方法或者是我的问题首先是合乎逻辑的! :)
【问题讨论】:
标签: python django iteration django-queryset