Django + Celery-AttributeError:“设置”对象没有属性“ worker_state_db”

时间:2019-06-02 21:01:38

标签: python django celery

尝试使用以下方法运行芹菜工人时:

celery -A my_app_name worker -l INFO

我得到一个AttributeError: 'Settings' object has no attribute 'worker_state_db'

该应用以前可以正常运行,但是我找不到再次破坏它的提交。

这是一个Django Web应用程序,使用Celery作为Redis数据库的工作程序。

我的(相关)settings.py如下:

...
SECRET_KEY = 'A_VALID_BUT_REDACTED_SECRET_KEY'
REDIS = os.environ.get('REDIS_URL','redis://localhost:6379')
CELERY_BROKER_URL = REDIS
CELERY_BROKER_URL = REDIS
CELERY_RESULT_BACKEND = REDIS
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
TASK_ALWAYS_EAGER=False

我的celery.py看起来像:

from __future__ import absolute_import, unicode_literals
import os
from celery import Celery
from django.conf import settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'my_app_name.settings')

app = Celery('my_app_name')

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

最后是我的init.py

from __future__ import absolute_import, unicode_literals

from .celery import app as celery_app

__all__ = ('celery_app',)

我尝试做this question suggests,但是它不能解决任何问题。

我还尝试查看其他运行celery的Django应用,但找不到任何不同/配置错误的

有什么聪明的方法可以解决我Celery设置的问题吗?

0 个答案:

没有答案