(Ошибка Django-Celery) ImportError: Нет модуля с именем myproject - PullRequest
0 голосов
/ 26 апреля 2018

Я использую Django-Celery впервые.Когда я пытаюсь выполнить следующую команду:

celery -A MyProject worker -l info

я получаю это сообщение об ошибке:

ImportError: No module named MyProject

MyProject / MyProject / init .py:

from __future__ import absolute_import, unicode_literals
from .celery import app as celery_app


__all__ = ['celery_app']

MyProject / MyProject / celery.py:

from __future__ import absolute_import
import os
import sys
from celery import Celery
from django.conf import settings

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

app = Celery('MyProject')
app.config_from_object('django.conf:settings', namespace='CELERY')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MyProject.settings')
sys.path.insert(0,os.path.abspath(os.path.join(os.path.dirname(__file__),'../MyProject')))
app.autodiscover_tasks()

MyProject / MyProject / settings.py;Я включил строку ниже:

CELERY_BROKER_URL = 'amqp://localhost'

Моя структура проекта Django выглядит следующим образом:

  • Мой проект
    • Мой проект
      • init .py
      • celery.py
      • settings.py
      • urls.py
      • wsgi.py
    • Myapp
      • миграций /
      • шаблонов /
      • init .py
      • admin.py
      • apps.py
      • forms.py
      • models.py
      • tasks.py
      • tests.py
      • urls.py
      • views.py
    • db.sqlite3
    • manage.py
...