【发布时间】:2018-01-18 14:50:28
【问题描述】:
我有一个带有 Celery 的 Django 应用程序。任务在不同应用程序中使用@shared_task 描述在tasks.py 文件中,每个都有自己的AppConfig 并且正在正确安装(添加到INSTALLED_APP)。
在我关闭 DEBUG 之前一切正常。由于未注册类型的任务,Celery 开始失败。使用 DEBUG 变量 Celery 可以看到我的所有任务并正常工作。
编辑: 我的 celery.py 代码如下:
from __future__ import absolute_import, unicode_literals
import os
from celery import Celery
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'core.settings')
app = Celery('APP')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()
@app.task(bind=True)
def debug_task(self):
print('Request: {0!r}'.format(self.request))
运行manage.py检查没有错误,所有配置文件和日志都有正确的权限。
什么会导致这样的错误?
【问题讨论】:
-
你尝试过什么来达到你想要的结果?你对你的问题的研究表明了什么?你能提供你的尝试代码吗? How do I ask a good question、How much research effort is expected 和 How to create a Minimal, Complete, and Verifiable example 可能有助于改进您的问题。