CELERY_ROUTES devrait être CELERY_TASK_ROUTES
http://docs.celeryproject.org/en/latest/userguide/configuration.html
J'ai passé quelques heures avant de comprendre ça :(
J'imagine que la même chose s'applique à CELERY_QUEUES
pourriez-vous envoyer pr avec des modifications suggérées?
ceci est lié à https://github.com/celery/celery/pull/4510
Les documents sont en fait corrects, mais il m'a fallu un certain temps pour comprendre pourquoi - je vais vous expliquer au cas où cela aiderait les autres.
CELERY_ROUTES
est l'ancien nom de réglage du céleri qui a maintenant été remplacé par task_routes
. Cependant, si vous souhaitez spécifier les paramètres Celery dans un fichier de paramètres _Django_, ils doivent être en majuscules comme l'exige la documentation de Django. Cela signifierait ajouter TASK_ROUTES
à votre fichier de paramètres Django, mais pour éviter tout conflit avec d'autres paramètres Django, il est recommandé de préfixer les paramètres de céleri avec CELERY_
, ce qui vous amènerait à ajouter par exemple CELERY_TASK_ROUTES
à votre fichier de paramètres Django. Votre code chargerait alors ceci dans l'application Celeri en faisant quelque chose comme ceci :
app.config_from_object('django.conf:settings', namespace='CELERY')
Cela se traduirait par Celery prenant CELERY_TASK_ROUTES
, supprimant le préfixe d'espace de noms pour obtenir TASK_ROUTES
et le mettant en minuscules pour obtenir task_routes
. Le résultat étant qu'il définira la configuration du céleri via le nouveau nom.
En résumé:
CELERY_ROUTES
est l'ancien nom du paramètre de céleriCELERY_TASK_ROUTES
est une modification en majuscules et préfixée du nouveau nom de paramètre, couramment utilisée pour définir le nouveau nom de paramètre à partir d'un fichier de paramètres Django.J'espère que cela pourra aider.
(Basé sur mon commentaire plus court sur cette réponse de débordement de pile )
Commentaire le plus utile
Les documents sont en fait corrects, mais il m'a fallu un certain temps pour comprendre pourquoi - je vais vous expliquer au cas où cela aiderait les autres.
CELERY_ROUTES
est l'ancien nom de réglage du céleri qui a maintenant été remplacé partask_routes
. Cependant, si vous souhaitez spécifier les paramètres Celery dans un fichier de paramètres _Django_, ils doivent être en majuscules comme l'exige la documentation de Django. Cela signifierait ajouterTASK_ROUTES
à votre fichier de paramètres Django, mais pour éviter tout conflit avec d'autres paramètres Django, il est recommandé de préfixer les paramètres de céleri avecCELERY_
, ce qui vous amènerait à ajouter par exempleCELERY_TASK_ROUTES
à votre fichier de paramètres Django. Votre code chargerait alors ceci dans l'application Celeri en faisant quelque chose comme ceci :Cela se traduirait par Celery prenant
CELERY_TASK_ROUTES
, supprimant le préfixe d'espace de noms pour obtenirTASK_ROUTES
et le mettant en minuscules pour obtenirtask_routes
. Le résultat étant qu'il définira la configuration du céleri via le nouveau nom.En résumé:
CELERY_ROUTES
est l'ancien nom du paramètre de céleriCELERY_TASK_ROUTES
est une modification en majuscules et préfixée du nouveau nom de paramètre, couramment utilisée pour définir le nouveau nom de paramètre à partir d'un fichier de paramètres Django.J'espère que cela pourra aider.
(Basé sur mon commentaire plus court sur cette réponse de débordement de pile )