响应 Django 中的模型更改?
Responding to model changes in Django?
有没有办法在发生模型更改时执行代码?当添加、删除或编辑 Django 模型对象时,我如何观察?
Django signals 非常适合这个。与 iOS 上的 NSNotificationCenter 类似,Django 信号允许其他应用程序通过连接到信号来通知信号事件。
这就是 django-signals 的用途。您可以使用 post_save
和 post_delete
来观察模型对象。
Django provides a set of built-in signals that let user code get notified by Django itself of certain actions.
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
有没有办法在发生模型更改时执行代码?当添加、删除或编辑 Django 模型对象时,我如何观察?
Django signals 非常适合这个。与 iOS 上的 NSNotificationCenter 类似,Django 信号允许其他应用程序通过连接到信号来通知信号事件。
这就是 django-signals 的用途。您可以使用 post_save
和 post_delete
来观察模型对象。
Django provides a set of built-in signals that let user code get notified by Django itself of certain actions.
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