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是旧的 celery 设置名称,现在已替换为task_routes 。 但是,如果您想在 _Django_ 设置文件中指定 Celery 设置,则它们必须按照 Django 文档的要求为大写。 这意味着将TASK_ROUTES添加到您的 Django 设置文件中,但为避免与其他 django 设置冲突,建议在 celery 设置前加上CELERY_ ,这将导致您添加例如CELERY_TASK_ROUTES到你的 Django 设置文件。 然后,您的代码将通过执行以下操作将其加载到 celery 应用程序中:

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

这将导致 Celery 采用CELERY_TASK_ROUTES ,剥离名称空间前缀以获得TASK_ROUTES ,并将其小写以获得task_routes 。 结果是它将通过新名称设置 celery 配置。

总之:

  • CELERY_ROUTES是旧的 celery 设置名称
  • CELERY_TASK_ROUTES是新设置名称的大写前缀更改,通常用于从 Django 设置文件中设置新设置名称。

希望有帮助。

(基于我对此堆栈溢出答案的简短评论)

所有3条评论

你能发送带有建议编辑的公关吗?

文档实际上是正确的,但我花了一段时间才弄清楚为什么 - 我会解释以防它帮助其他人。

CELERY_ROUTES是旧的 celery 设置名称,现在已替换为task_routes 。 但是,如果您想在 _Django_ 设置文件中指定 Celery 设置,则它们必须按照 Django 文档的要求为大写。 这意味着将TASK_ROUTES添加到您的 Django 设置文件中,但为避免与其他 django 设置冲突,建议在 celery 设置前加上CELERY_ ,这将导致您添加例如CELERY_TASK_ROUTES到你的 Django 设置文件。 然后,您的代码将通过执行以下操作将其加载到 celery 应用程序中:

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

这将导致 Celery 采用CELERY_TASK_ROUTES ,剥离名称空间前缀以获得TASK_ROUTES ,并将其小写以获得task_routes 。 结果是它将通过新名称设置 celery 配置。

总之:

  • CELERY_ROUTES是旧的 celery 设置名称
  • CELERY_TASK_ROUTES是新设置名称的大写前缀更改,通常用于从 Django 设置文件中设置新设置名称。

希望有帮助。

(基于我对此堆栈溢出答案的简短评论)

此页面是否有帮助?
0 / 5 - 0 等级