Python中的自定义信号
我读过关于自己发出信号的Django文档,但对我来说很难理解。你能给我一个你自己发信号的例子,并给出一些细节吗?Python中的自定义信号,python,django,signals,Python,Django,Signals,我读过关于自己发出信号的Django文档,但对我来说很难理解。你能给我一个你自己发信号的例子,并给出一些细节吗? 提前感谢您可以通过定义 from django.dispatch import Signal content_object_state_change = Signal(providing_args=["content_object", "created"]) 然后您可以按如下方式发送: content_object_state_change.send( sender=s
提前感谢您可以通过定义
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
)
并按如下方式接收。genrally此代码可以转到app.ready.py
函数,该函数在应用程序启动时获取注册表:
content_object_state_change.connect(content_object_state_change_receiver)
content\u object\u state\u change\u receiver
是一个您想要实现的逻辑函数。谢谢,除非有exmaple,否则我无法理解。你能帮我理解Django文档中所述的比萨饼示例吗?当然,pizza\u done
是自定义信号,首先创建用于Django应用程序,然后你必须通过send\u pizza
函数在URL上发送,然后你有注册函数接收它。您可以通过我前面提到的方法或使用decorator@receiver
来实现