django - 通过另一个属性 django 更改模型属性
问题描述
我有模特Word
class Word(models.Model):
group_id = models.IntegerField()
old_group_id = models.IntegerField(default=0)
我有一些单词查询:
words = Word.objects.filter(...)
现在我希望每个单词都设置 old_group_id
为group_id
类似words.update(old_group_id=group_id)
到目前为止,我正在通过迭代每个单词来做到这一点,但这感觉不是很有效:
for word in words:
word.old_group_id = word.group_id
word.save()
解决方案
您可以使用F
对象。
words.update(old_group_id=F('group_id'))
推荐阅读
- java - Button 的 setButtondrawable 和 setBackground 方法有什么区别?
- c++ - VisualStudio 2017 但不是 VisualStudio 2019 中的“'constexpr' 在此处无效”错误
- javascript - Firebase Cloud Function listUser 获得 1000+ 用户
- python - MCMC 方法一维铁磁伊辛模型
- github - 即使文件夹被编号,Github 也不会对文件夹进行排序
- javascript - 将一个php页面的加载分为几个部分
- python - 从覆盖范围中排除函数
- firefox - 行为的滚动持续时间 = 在不同浏览器中平滑
- python - BeautifulSoup-访问更多评论
- sql - PL/SQL 对于一行如何获取具有不同值的列数