我想增加数据库中的值,而不必在数据库上执行命中来找到实际值。实际上,我想做这样的事情......但这不起作用。任何优雅的解决方案?
P.objects.filter(username='John Smith').update(accvalue+=-50)
谢谢!
查看 Django 的F() 对象。
您可以将其与update()
基于 previos 字段值更新值的方法结合使用,即
>>> from django.db.models import F
>>> P.objects.filter(username="John Smith").update(accvalue=F("accvalue") + 50)
这将使用数据库的本机UPDATE
方法来做你想做的事。