eug*_*ene 7 django import signals django-haystack
haystack_signal_processor允许您使用自定义信号处理器来启动某些模型的索引.
我在我的settings.py中
HAYSTACK_SIGNAL_PROCESSOR='my_app.signals.MySignalProcessor'
(这是导入的signals.py.这是设置 - >信号)
然后我里面signals.py我有
from my_app.models import my_model#连接my_model
而my_app.models.py有from django.conf import settings
(信号- >模式- >设置)
如何解决此循环导入?
摘自https://github.com/PitonFoundation/atlas/commit/cc0abcb
不是在signals.py文件的基础上导入模型,而是使用get_model在自定义SignalProcessor的方法中导入模型:
from django.db.models.loading import get_model
class MySignalProcessor(signals.BaseSignalProcessor):
def setup(self):
MyModel = get_model('myApp', 'MyModel')
models.signals.post_save.connect(self.handle_save, sender=MyModel)
Run Code Online (Sandbox Code Playgroud)