3

我已经使用 Django 一年多了,但我认为我错过了一些非常基本的东西。我有一个相当大的查询集(1000 多个对象),我想为该查询集中的每个对象更改一个属性。这真的是要走的路吗?我确定有更简单的东西吗?

for obj in qs:
  obj.my_attr = True 
  obj.save()

谢谢

4

1 回答 1

17

您可以批量进行更改,尽管这不会触发模型的save()回调:

MyModel.objects.filter(..).update(my_attr=True)

文档:一次更新多个对象

于 2009-06-11T11:30:57.803 回答