【发布时间】:2021-02-28 16:48:21
【问题描述】:
我正在使用django signals 更新模型的外键对象。
@receiver(sender=PointItem, signal=post_save)
def PointItemSaved(instance, sender, **kwargs):
try:
print(f"before save {user.points}")
user = User.objects.get(id=instance.user.id)
user.points += 100
user.save()
print(f"after save {user.points}")
except Exception as e:
print(f"there is a problem {e}")
根据日志,一切正常。
之前和之后的值是正确的。
但是当我在管理页面上检查它时它没有改变!
更新:
当我尝试从 django Admin 保存 PointItem 时它可以工作。
当我尝试从 api 调用中保存对象时会出现此问题。
【问题讨论】:
标签: django django-models django-signals