问题来了
我想使用django的bulk_create
一次保存更多数据。但我从API得到的原始结果是一个包含大量数据的生成器。所以我想循环这个生成器并批量保存数据
我的审判如下:
# a generator with amount data
l = (
item for item in range(1,100230, 1)
)
# base model table
class ModelDemo(models.Model):
...
# main logic code
limit = 2000
while l:
bulk_list = []
for index, item in enumerate(l):
bulk_list.append(
ModelDemo(
...
)
)
if index == limit:
ModelDemo.objects.bulk_create(bulk_list)
break
很明显,我会丢失最后的230
数据,但我现在找不到解决方案
欢迎任何评论。太好了,谢谢
这可能有用
例如:
Reference
啊!我现在明白你的问题了
您只需在循环终止后进行最后一个bulk\u create调用,以处理太小的最终列表
主逻辑码
我不知道while循环是用来做什么的。你不应该打破
相关问题 更多 >
编程相关推荐