2016-10-12 2 views
0

Это небольшая история ...необходимо перезапустить питона, применяя сельдерей конфигурации

У меня была эта ошибка:

AttributeError: 'DisabledBackend' object has no attribute '_get_task_meta_for'

При изменении tasks.py, как сказал Diederik на Celery with RabbitMQ: AttributeError: 'DisabledBackend' object has no attribute '_get_task_meta_for'

app = Celery('tasks', backend='rpc://', broker='amqp://[email protected]//') 

побежал

>>> from tasks import add 
>>> result = add.delay(4,50) 
>>> result.ready() 

снова получил DisabledBackend ... хмм что это было ..

положить код в файл run.py и он вернулся ... Правда

from tasks import add 
try: 
     result = add.delay(1,4) 
     print (result.ready()) 
except: 
     print "exept" 

Я вижу, что если я позвоню >>> от импорта задач добавьте после того, как tasks.py изменился, он не получит обновления ... Это поведение одинаково для ipython, поэтому из-за того, что я не могу понять причину, я советую людям DEBUG из сценариев, таких как ~ runthis.py

Будет рад за ответ, который разрушит мою идею ...

ответ

0

Если вы используете int erpreter, вам нужно

reload(tasks) 

это заставит задачи реимпорта модуль

+0

Да, спасибо за идею. – Riorita

+0

Он подробно описан на странице http://stackoverflow.com/questions/2534480/proper-way-to-reload-a-python-module-from-the-console – Riorita

Смежные вопросы