Django:不需要构造整个查询集就可以从一个dicts列表进行批量更新

ftf50wuq  于 2023-07-01  发布在  Go
关注(0)|答案(1)|浏览(96)

我有一个字典目录。类似于:

[{'id': 0, 'price': 20}, {'id': 1, 'price': 10}] # a few thousands of elements

如何在不构建整个QuerySet的情况下更新相应的模型?

rjjhvcjd

rjjhvcjd1#

django-2.2开始,你可以使用**.bulk_update(…)**[Django-doc]:

data = [{'id': 0, 'price': 20}, {'id': 1, 'price': 10}]

Match.objects.bulk_update([Match(**kv) for kv in data], ['price'])

因此,我们在这里构造Match对象,然后将其传递给bulk_update以构造更新查询。

相关问题