如何开始在Django项目中启动芹菜工人

时间:2018-05-23 05:45:52

标签: python django ubuntu celery

我有一个Django项目,其目录结构如下所述。我正在尝试使用Celery在后​​台运行任务。我在运行worker时遇到了一些麻烦。每当我发出以下命令时,都会出错。

命令

$ celery -A tasks worker --loglevel=info 

来自project所在的manage.py目录

  

ModuleNotFoundError:没有名为' tasks'

的模块

来自project所在的celery.py目录

  

ModuleNotFoundError:没有名为' tasks'

的模块

来自app所在的tasks.py目录

  

AttributeError:模块'任务'没有属性'芹菜'

项目结构

project
    |-- app
         |-- admin.py
         |-- apps.py
         |-- __init__.py
         |-- models.py
         |-- tasks.py
         |-- tests.py
         |-- urls.py
         |-- views.py
    |-- project
            |-- celery.py
            |-- settings.py
            |-- __init__.py
            |-- urls.py
            |-- wsgi.py
    |-- manage.py

1 个答案:

答案 0 :(得分:3)

您应该使用项目名称来启动芹菜。由于您的celery.py位于project目录中,因此需要从项目的根目录开始运行:

celery -A project worker --loglevel=info 

而不是

celery -A tasks worker --loglevel=info 

检查示例here