Python中的自定义信号

时间:2019-03-16 12:29:36

标签: python django signals

我阅读了有关制作自己的信号的Django文档,但是我很难理解。您能给我一个发出自己信号的例子并提供一些细节吗? 预先谢谢你

1 个答案:

答案 0 :(得分:1)

您可以通过定义

来创建自定义信号
from django.dispatch import Signal


content_object_state_change = Signal(providing_args=["content_object", "created"])

然后您可以按以下方式发送它:

content_object_state_change.send(
    sender=sender or obj.__class__, content_object=obj, created=True
)

并按以下方式接收它。通常,此代码可以转到app.ready.py函数,该函数会在应用启动时注册:

content_object_state_change.connect(content_object_state_change_receiver)

content_object_state_change_receiver是具有您要实现的逻辑的功能。