Celery: ドキュメントのエラー:CELERY_ROUTES-> CELERY_TASK_ROUTES

作成日 2018年09月03日  ·  3コメント  ·  ソース: celery/celery

CELERY_ROUTESはCELERY_TASK_ROUTESである必要があります
http://docs.celeryproject.org/en/latest/userguide/configuration.html

それを理解する前に数時間を費やしました:(
同じことがCELERY_QUEUESにも当てはまると思います

Documentation Sprint Candidate

最も参考になるコメント

ドキュメントは実際には正しいですが、その理由を理解するのに少し時間がかかりました。他の人に役立つ場合に備えて説明します。

CELERY_ROUTESは古いセロリ設定名で、現在はtask_routesに置き換えられています。 ただし、_Django_設定ファイルでCelery設定を指定する場合は、Djangoドキュメントで要求されているように大文字にする必要があります。 これは、Django設定ファイルにTASK_ROUTESを追加することを意味しますが、他のdjango設定との競合を避けるために、セロリ設定の前にCELERY_を付けることをお勧めします。これにより、たとえばCELERY_TASK_ROUTESが追加されます。

app.config_from_object('django.conf:settings', namespace='CELERY')

これにより、CeleryはCELERY_TASK_ROUTESを取得し、名前空間プレフィックスを削除してTASK_ROUTESを取得し、小文字でtask_routesを取得します。 その結果、新しい名前でセロリの設定が設定されます。

要約すれば:

  • CELERY_ROUTESは古いセロリの設定名です
  • CELERY_TASK_ROUTESは、新しい設定名の大文字の接頭辞付きの変更であり、Django設定ファイルから新しい設定名を設定するために一般的に使用されます。

お役に立てば幸いです。

このスタックオーバーフローの回答に関する私の短いコメントに基づく)

全てのコメント3件

提案された編集でPRを送ってもらえますか?

これはhttps://github.com/celery/celery/pull/4510に関連しています

ドキュメントは実際には正しいですが、その理由を理解するのに少し時間がかかりました。他の人に役立つ場合に備えて説明します。

CELERY_ROUTESは古いセロリ設定名で、現在はtask_routesに置き換えられています。 ただし、_Django_設定ファイルでCelery設定を指定する場合は、Djangoドキュメントで要求されているように大文字にする必要があります。 これは、Django設定ファイルにTASK_ROUTESを追加することを意味しますが、他のdjango設定との競合を避けるために、セロリ設定の前にCELERY_を付けることをお勧めします。これにより、たとえばCELERY_TASK_ROUTESが追加されます。

app.config_from_object('django.conf:settings', namespace='CELERY')

これにより、CeleryはCELERY_TASK_ROUTESを取得し、名前空間プレフィックスを削除してTASK_ROUTESを取得し、小文字でtask_routesを取得します。 その結果、新しい名前でセロリの設定が設定されます。

要約すれば:

  • CELERY_ROUTESは古いセロリの設定名です
  • CELERY_TASK_ROUTESは、新しい設定名の大文字の接頭辞付きの変更であり、Django設定ファイルから新しい設定名を設定するために一般的に使用されます。

お役に立てば幸いです。

このスタックオーバーフローの回答に関する私の短いコメントに基づく)

このページは役に立ちましたか?
0 / 5 - 0 評価