Stack Overflow 上有很多关于使用递归的帖子post_save
信号,评论和答案绝大多数是:“为什么不覆盖 save()”或仅触发的保存created == True
.
好吧,我相信有一个很好的理由不使用save()
- 例如,我添加一个临时应用程序,用于处理与我们的订单模型完全分开的订单履行数据。
框架的其余部分完全不知道履行应用程序,并且使用 post_save 挂钩将所有与履行相关的代码与我们的订单模型隔离。
如果我们放弃履行服务,我们的核心代码就不需要改变。我们删除履行应用程序,仅此而已。
那么,是否有任何合适的方法来确保 post_save 信号不会触发同一个处理程序两次?
您可以在信号处理程序中使用更新而不是保存
queryset.filter(pk=instance.pk).update(....)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)