Django芹菜没有找到芹菜模块

时间:2018-06-10 15:13:42

标签: python django celery django-celery

我正试图用dutso设置芹菜,但我一直在

ModuleNotFoundError: No module named 'celery'

我有一个名为Tasklist的主项目,其结构为:

- Tasklist/
  - manage.py
  - Tasklist/
    - __init__.py
    - settings.py
    - celery.py
    - urls.py

我的 init .py如下:

from __future__ import absolute_import, unicode_literals

from .celery import app as celery_app

__all__ = ['celery_app']

我的celery.py就像这样:

from __future__ import absolute_import, unicode_literals
import os
from celery import Celery

app = Celery('')

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

我不确定是否需要更改settings.py - 但我在本地环境中运行所以我不需要启动芹菜工作者?我很困惑!

我读到django-celery是多余的,现在芹菜的最新版本在这里,所以我只安装了芹菜4.1.1。

1 个答案:

答案 0 :(得分:0)

步骤:

  1. 如果在virtualEnv上安装了celery,请激活VirtualEnv
  2. 导航到路径:/path/to/Tasklist/(至应用程序名称级别)
  3. 运行celery -A Tasklist worker -l info

-A作为应用名称。

Celery设置和安装:Official Document

在Settings.py中可以管理以下设置。

BROKER_URL = 'redis://localhost:6379/0'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'