我试图创建芹菜文件并通过..
运行celery -A myapp worker -l info
但是我得到了错误,
File "/production/pythonenv/project/lib/python2.7/site-packages/configurations/base.py", line 30, in __new__
raise ImproperlyConfigured(install_failure)
django.core.exceptions.ImproperlyConfigured: django-configurations settings importer wasn't correctly installed. Please use one of the starter functions to install it as mentioned in the docs: http://django-configurations.readthedocs.org/
以下是配置/文件,
树
(通过'tree myapp / config /'从项目rool运行)
config/
|-- __init__.py
|-- __init__.pyc
|-- celery.py
|-- settings.py
|-- urls.py
|-- wsgi.py
myapp/
|-- __init__.py
|-- __init__.pyc
|-- celery.py
|-- helper.py
|-- models.pyc
|-- serializers.py
|-- views.py
celery.py
from __future__ import absolute_import
import os,sys,
from celery import Celery
from django.conf import settings
sys.path.append('/prod/project/')
sys.path.append('/prod/')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
os.environ.setdefault('DJANGO_CONFIGURATION', 'Local')
app = Celery('myapp.celery.celery')
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(settings.INSTALLED_APPS, related_name='tasks')
有什么想法吗?
答案 0 :(得分:9)
根据http://django-configurations.readthedocs.org/en/latest/cookbook/#celery,您可能需要添加celery.py
:
os.environ.setdefault('DJANGO_CONFIGURATION', 'Local')
from configurations import importer
importer.install()
app = Celery('myapp.celery.celery')