CELERY_ROUTES sollte CELERY_TASK_ROUTES sein
http://docs.celeryproject.org/en/latest/userguide/configuration.html
Ich habe ein paar Stunden damit verbracht, das herauszufinden :(
Ich kann mir vorstellen, dass das gleiche auf CELERY_QUEUES zutrifft
könntest du pr mit vorgeschlagenen änderungen schicken?
dies bezieht sich auf https://github.com/celery/celery/pull/4510
Die Dokumente sind eigentlich korrekt, aber ich habe eine Weile gebraucht, um herauszufinden, warum - ich werde es erklären, falls es anderen hilft.
CELERY_ROUTES
ist der alte Name der Sellerie-Einstellung, der jetzt durch task_routes
ersetzt wurde. Wenn Sie jedoch Celery-Einstellungen in einer _Django_-Einstellungsdatei angeben möchten, müssen sie in Großbuchstaben geschrieben werden, wie es in der Django-Dokumentation erforderlich ist. Dies würde bedeuten, TASK_ROUTES
zu Ihrer Django-Einstellungsdatei hinzuzufügen, aber um Konflikte mit anderen Django-Einstellungen zu vermeiden, wird empfohlen, Celery-Einstellungen CELERY_
voranzustellen, was dazu führen würde, dass Sie beispielsweise CELERY_TASK_ROUTES
hinzufügen
app.config_from_object('django.conf:settings', namespace='CELERY')
Dies würde dazu führen, dass Celery CELERY_TASK_ROUTES
nimmt, das Namespace-Präfix entfernt, um TASK_ROUTES
zu erhalten, und es in Kleinbuchstaben umwandelt, um task_routes
zu erhalten. Das Ergebnis ist, dass die Selleriekonfiguration über den neuen Namen festgelegt wird.
In Summe:
CELERY_ROUTES
ist der alte Name der Sellerie-EinstellungCELERY_TASK_ROUTES
ist eine in Großbuchstaben geschriebene, vorangestellte Änderung des neuen Einstellungsnamens, die häufig verwendet wird, um den neuen Einstellungsnamen aus einer Django-Einstellungsdatei festzulegen.Hoffentlich hilft das.
(Basierend auf meinem kürzeren Kommentar zu dieser Stapelüberlaufantwort )
Hilfreichster Kommentar
Die Dokumente sind eigentlich korrekt, aber ich habe eine Weile gebraucht, um herauszufinden, warum - ich werde es erklären, falls es anderen hilft.
CELERY_ROUTES
ist der alte Name der Sellerie-Einstellung, der jetzt durchtask_routes
ersetzt wurde. Wenn Sie jedoch Celery-Einstellungen in einer _Django_-Einstellungsdatei angeben möchten, müssen sie in Großbuchstaben geschrieben werden, wie es in der Django-Dokumentation erforderlich ist. Dies würde bedeuten,TASK_ROUTES
zu Ihrer Django-Einstellungsdatei hinzuzufügen, aber um Konflikte mit anderen Django-Einstellungen zu vermeiden, wird empfohlen, Celery-EinstellungenCELERY_
voranzustellen, was dazu führen würde, dass Sie beispielsweiseCELERY_TASK_ROUTES
hinzufügenDies würde dazu führen, dass Celery
CELERY_TASK_ROUTES
nimmt, das Namespace-Präfix entfernt, umTASK_ROUTES
zu erhalten, und es in Kleinbuchstaben umwandelt, umtask_routes
zu erhalten. Das Ergebnis ist, dass die Selleriekonfiguration über den neuen Namen festgelegt wird.In Summe:
CELERY_ROUTES
ist der alte Name der Sellerie-EinstellungCELERY_TASK_ROUTES
ist eine in Großbuchstaben geschriebene, vorangestellte Änderung des neuen Einstellungsnamens, die häufig verwendet wird, um den neuen Einstellungsnamen aus einer Django-Einstellungsdatei festzulegen.Hoffentlich hilft das.
(Basierend auf meinem kürzeren Kommentar zu dieser Stapelüberlaufantwort )