1

在 Postgresql 中,您可以发出带有 RETURNING 语句的 UPDATE,以便在执行更新后获取某些列。这很有用,因为您可以一次访问数据库而不是两次。

UPDATE foo
SET bar = 10
WHERE id = 1
RETURNING baz

如何在不使用原始查询的情况下在 Django 中模拟这一点?

几年前,我在 stackoverflow 上看到了一些较旧的问题,表明这是不可能的。近年来有什么变化吗?

我不想执行以下操作,这需要两次访问数据库:

foo = Foo.objects.get(id=1)
foo.bar = 10
foo.save()
print(foo.baz)

我确实看到了这张四年前的票,但被拒绝了。有什么改变吗?

4

0 回答 0