我可以在 Django 中手动触发信号吗?
Can I manually trigger signals in Django?
我在我的 Django 应用程序中编写了一些信号,这些信号应该在创建或修改特定模型实例时发送电子邮件,但信号接收器功能似乎没有响应;无论如何,我没有收到任何电子邮件(尽管我已经检查过我可以使用当前配置发送电子邮件)。
无论如何;我想知道,是否可以手动发送一个 post_save 信号用于调试目的,而不是每次都尝试通过创建一个新的模型实例来触发它?谢谢!
是的。见 the documentation:
from django.db.models.signals import post_save
instance = MyModel(field='qwerty')
post_save.send(MyModel, instance=instance, created=True)
我在我的 Django 应用程序中编写了一些信号,这些信号应该在创建或修改特定模型实例时发送电子邮件,但信号接收器功能似乎没有响应;无论如何,我没有收到任何电子邮件(尽管我已经检查过我可以使用当前配置发送电子邮件)。
无论如何;我想知道,是否可以手动发送一个 post_save 信号用于调试目的,而不是每次都尝试通过创建一个新的模型实例来触发它?谢谢!
是的。见 the documentation:
from django.db.models.signals import post_save
instance = MyModel(field='qwerty')
post_save.send(MyModel, instance=instance, created=True)