繁体   English   中英

Django,ImportError:无法导入名称Celery

[英]Django, ImportError: cannot import name Celery

为什么会这样呢?
我的celery.py:

import os
from celery import Celery
from django.conf import settings

# set the default Django settings module for the 'celery' program.
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myshop.settings')

app = Celery('myshop')

app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

我的init .py

# import celery
from .celery import app as celery_app

我什至尝试将celery.py重命名为其他名称,但错误仍然存​​在。 可能是因为我的python版本吗?

我将发布答案,以便将其从评论中移除。

首先,在__ init__.py文件中添加以下行

from __future__ import absolute_import, unicode_literals

其次,您需要在设置中添加有关brooker的信息。 这是一个入门的示例配置文件。 它应包含运行基本Celery设置所需的全部内容。

经纪人设定。

broker_url = 'amqp://guest:guest@localhost:5672//'

接下来是经营您的芹菜工人。 因此,如果您的celery应用程序名为myshop ,则必须输入以下简单命令来运行celery worker(使用您的环境):

celery -A myshop worker -l info

然后尝试运行您的任务,一切都会正常。

其版本号

您如何安装芹菜的

pip install celery == 3.0.19
如果这
然后通过运行python
python manage.py运行服务器
要么
pip3 install celery == 3.0.19如果是这样
然后通过运行python
python3 manage.py运行服务器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM