Python Django:更改查询集中所有对象的字段值
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/34833000/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Django: change the value of a field for all objects in a queryset
提问by 43Tesseracts
I have a model MyModel
with a boolean field active
我有一个MyModel
带有布尔字段的模型active
Elsewhere, I am retrieving a queryset:
在其他地方,我正在检索一个查询集:
qs = MyModel.Objects.filter(....)
how can I set active=False
for all objects in this qs
?
我如何active=False
为这个中的所有对象设置qs
?
采纳答案by Pynchia
You can update all the records in the queryset with
您可以使用以下命令更新查询集中的所有记录
qs.update(active=False)
Please refer to the official Django documentationfor more info
有关更多信息,请参阅官方Django 文档
回答by Michael Stachura
And of course you can pass many arguments to update e.g.:
当然,您可以传递许多参数来更新,例如:
qs.update(active=False, is_deleted=True, date_finished=timezone.now())