Разработка с Django + Celery без запуска `celeryd`? - PullRequest
28 голосов
/ 06 октября 2010

В разработке немного хлопотно запустить celeryd, а также сервер разработки Django. Можно ли, например, попросить celery синхронно запускать задачи во время разработки? Или что-то подобное?

Ответы [ 3 ]

45 голосов
/ 06 октября 2010

Да, вы можете сделать это, установив CELERY_ALWAYS_EAGER = True в настройках.
http://docs.celeryproject.org/en/latest/configuration.html#task-execution-settings

7 голосов
/ 19 марта 2011

В django-celery также есть специальный тестер Django, который помогает с CELERY_ALWAYS_EAGER. Узнайте больше об использовании Celery с Django на документах .

4 голосов
/ 25 февраля 2017

В версии 4.0 из сельдерея CELERY_ALWAYS_EAGER параметр был заменен на CELERY_TASK_ALWAYS_EAGER в Django settings.py или task_always_eager изначально в celery conf.

Поскольку многочисленные изменения в конфигурации сельдерея изверсии от 3.x до 4.x распределены по многим строкам, я предлагаю использовать встроенный инструмент миграции настроек.

celery upgrade settings --django

source:

К счастью, вам не нужно вручную изменять файлы, так как настройки обновления сельдерея - программа django должна делать правильные вещи.

http://docs.celeryproject.org/en/latest/whatsnew-4.0.html#step-4-upgrade-to-celery-4-0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...