我知道这已经被问过并回答过,但没有一个建议的解决方案对我有用。这是我的signals.py
:
from django.dispatch import Signal
my_signal = Signal(providing_args=['arg1', 'arg2', 'arg3'])
另一方面,我有一个名为的文件handlers.py
,如下所示:
from django.dispatch import receiver
from models import MyModels
from signals import my_signal
@receiver(my_signal, sender=MyModel)
def do_something(sender, **kwargs):
print 'I'm doing nothing!!!'
我在另一个文件中发送信号,如下所示:
from signals import my_signal
from models import MyModel
def some_function():
my_signal.send(MyModel, arg1='a', arg2='b', arg3='c')
我不知道该怎么办。当我发送信号时,django 没有抱怨,但do_something
函数中的代码从未到达,就像接收器工作不正常或收听错误的信号一样。任何人?