我的一个API调用可能导致对大量对象(Django模型)的更新.由于我正在单独更新每个项目,保存并继续下一个项目,因此我遇到了性能问题:
for item in Something.objects.filter(x='y'):
item.a="something"
item.save()
Run Code Online (Sandbox Code Playgroud)
有时我的过滤条件看起来像"x in('a','b','c',...)".
似乎官方的答案是"不会修复".我想知道人们在这些场景中使用什么策略来提高性能.
我有一个列表,我想在数据库中批量创建条目.
如果不循环遍历列表,我怎么能这样做,我认为,这将取消bulk_create的意义.
例如:
代替...
for x in list:
bulk_create...
Run Code Online (Sandbox Code Playgroud)
我怎么能...
bulk_create for the entire list at once in an efficient manner
Run Code Online (Sandbox Code Playgroud)
列表包含:
list = ['abc', 'def', 'ghi']
Run Code Online (Sandbox Code Playgroud)
它只是一个id的列表,而不是准备好直接输入bulk_create的形式(没有使用输入字段格式化).但是,我想在将列表传递给bulk_create之前可以修改它.