在mysql中,sql表达式如下:
udpate table set one_field=another_field
那么如何通过使用django orm来取得成功呢?例如:
在模型A中,有3个字段:id,a_value
在模型B中,有3个字段:id,b_value
现在我希望b_value的值等于a_value加b_value。表达式应该是这样的:b_value = b_value + a_value
。但是django orm中的F()不能用于不同的模型。如何在较少的代码中使用django orm来完成此操作。
顺便说一句,我的数据有点大,大约2000k。
答案 0 :(得分:1)
对于原始问题:
for obj in Model_Name.objects.all():
obj.one_field = obj.another_field
obj.save()
如果您有大型数据库,则可以使用批量更新。 https://docs.djangoproject.com/en/dev/topics/db/queries/#updating-multiple-objects-at-once
希望这有帮助