首页 > 解决方案 > Django 通过 F 批量更新

问题描述

我正在尝试为给定模型批量更新许多对象。我想我可以通过字典和 F 一起做类似的事情

FooBar.objects.filter(...).update(order = order_dict[F('id')])

order_dict 类似于

{1: 2, 2: 3, 3: 1, 4: 4}

id 等于 1、2、3 和 4 的对象存在,但它给了我一个关键错误:F(id) 尽管如此。为什么这不起作用?除了逐个更新对象或使用第 3 方包之外,还有其他方法可以实现此目的吗?

标签: django

解决方案


推荐阅读