У меня есть класс сигналов, в котором я определяю приемники сигналов
class SearchSignalProcessor(object):
def post_save_connector(self, sender, instance, **kwargs):
# do something
def pre_delete_connector(self, sender, instance, **kwargs):
# do something
def setup(self, model):
signals.post_save.connect(self.post_save_connector, sender=model, dispatch_uid="index_after_save")
signals.pre_delete.connect(self.pre_delete_connector, sender=model, dispatch_uid="index_before_delete")
def teardown(self, model):
signals.pre_delete.disconnect(self.pre_delete_connector, sender=model, dispatch_uid="index_after_save")
signals.post_save.disconnect(self.post_save_connector, sender=model, dispatch_uid="index_before_delete")
Я могу успешно подключить сигналы:
signal_processor = SearchSignalProcessor()
signal_processor.setup(SomeModel)
но disconnect
не работает. Я пробовал с dispatch_uid
и без него, каждый раз он просто возвращает False. Что я делаю не так?