模型更改发生时有没有办法执行代码?添加,删除或编辑Django模型对象时如何观察?
答案 0 :(得分:3)
这就是django-signals的用途。您可以使用post_save
和post_delete
来观察模型对象。
Django提供了一组内置信号,让Django自己通知用户代码某些动作。
from django.db.models.signals import post_save
from django.dispatch import receiver
from myapp.models import MyModel
@receiver(post_save, sender=MyModel)
def my_handler(sender, **kwargs):
# do whatever you want if a MyModel object is saved
答案 1 :(得分:1)
Django signals非常适合这一点。与iOS上的NSNotificationCenter类似,Django信号允许其他应用通过连接信号来通知信号事件。