Celery版本兼容性问题

时间:2019-04-17 11:01:09

标签: python django celery

我无法配置已经存在的django项目。该项目由fabric处理,并使用命令安装了所有软件包,并且在代码中出现“ ImportError: cannot import name Celery”错误,在此image中显示。

目录结构如下:

- proj/
  - manage.py
  - fabfile.py
  - proj/
    - __init__.py
    - celery.py
    - settings.py
    - urls.py

celery.py

import os
from celery import Celery
from django.conf import settings
from dotenv import load_dotenv
load_dotenv(os.path.join(os.path.dirname(os.path.dirname(__file__)), '.env'))
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'settings.development')
app = Celery('electric_soul')
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

@app.task(bind=True)
def debug_task(self):
    print('Request: {0!r}'.format(self.request))

ini .py 文件为:

# -*- coding: utf-8 -*-
__version__ = '1.0.1-dev'
__version_info__ = tuple([int(num) if num.isdigit() else num for num in __version__.replace('-', '.', 1).split('.')])
from .celery import app as celery_app  # noqa

尝试

  1. 我已经更改了celery.py的名称

  2. 我在 ini .py celery.py 的第一行添加了from __future__ import absolute_import, unicode_literals

0 个答案:

没有答案