首页 > 解决方案 > 通过另一个属性 django 更改模型属性

问题描述

我有模特Word

class Word(models.Model): 
   group_id = models.IntegerField()
   old_group_id = models.IntegerField(default=0)

我有一些单词查询:

words = Word.objects.filter(...)

现在我希望每个单词都设置 old_group_idgroup_id 类似words.update(old_group_id=group_id) 到目前为止,我正在通过迭代每个单词来做到这一点,但这感觉不是很有效:

for word in words:
  word.old_group_id = word.group_id
  word.save()

标签: djangopython-3.x

解决方案


您可以使用F对象

words.update(old_group_id=F('group_id'))

推荐阅读