django - Celery 在我的 Django 项目中找不到模块
问题描述
我有一个使用 celery 4.2.1 和 redis 2.10.6 的 Django 2.0 项目。django 项目有两个应用程序,memorabilia 和 face_recognition。我已经在我的开发机器上运行 django 成功地运行任务。我将所有内容上传到我的 git 服务器,然后从 git 在我的笔记本电脑上安装应用程序,更新所有要求等。两者都是 Ubuntu 机器。我没有使用 django-celery。
当我尝试跑步celery -A MemorabiliaJSON worker -l debug
时,
我得到一个例外说ModuleNotFoundError: No module named 'face_recognition.tasks'
我不确定如何解决这个问题,因为我的开发机器上正在运行相同的代码库。
我的文件结构是:
├── celery.sh
├── face_recognition
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ ├── models.py
│ ├── __pycache__
│ ├── tasks.py
│ ├── tests.py
│ └── views.py
├── __init__.py
├── manage.py
├── memorabilia
│ ├── admin.py
│ ├── apps.py
│ ├── fields.py
│ ├── fixtures
│ ├── __init__.py
│ ├── logs
│ ├── migrations
│ ├── models.py
│ ├── __pycache__
│ ├── storage.py
│ ├── tasks.py
│ ├── templates
│ ├── tests
│ ├── urls.py
│ ├── validators.py
│ ├── views.py
│ ├── widgets.py
├── MemorabiliaJSON
│ ├── celery.py
│ ├── default_images
│ ├── documents
│ ├── __init__.py
│ ├── __pycache__
│ ├── settings
│ ├── static
│ ├── urls.py
│ ├── views.py
│ ├── wsgi.py
├── __pycache__
│ ├── celery.cpython-36.pyc
│ └── __init__.cpython-36.pyc
├── requirements.txt
└── tests
大事记JSON/celery.py
# http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html
from __future__ import absolute_import, unicode_literals
import os
from celery import Celery
from django.apps import apps
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'MemorabiliaJSON.settings.tsunami')
app = Celery('MemorabiliaJSON')
app.config_from_object('django.conf:settings', namespace='CELERY')
#app.autodiscover_tasks(lambda: [n.name for n in apps.get_app_configs()])
app.autodiscover_tasks()
@app.task(bind=True)
def debug_task(self):
print('Request: {0!r}'.format(self.request))
(memorabilia-JSON) mark@octopus:~/python-projects/memorabilia-JSON
face_recognition/__init__.py
default_app_config = 'face_recognition.apps.FaceRecognitionConfig'
memorabilia/__init__.py
default_app_config = 'memorabilia.apps.MemorabiliaConfig'
INSTALLED_APPS 有这两个应用
'memorabilia.apps.MemorabiliaConfig',
'face_recognition.apps.FaceRecognitionConfig',
解决方案
推荐阅读
- python-3.x - 在并行过程中评估 PyTorch 模型上的数据后,GPU 内存不会释放
- java - 使用 WebtestClient 测试 MultipartFile
- r - 在 R 中编写中值函数
- ios - 点击列表项时如何显示视图?
- angular - SigninRedirectCallback 期间的 OIDC 客户端编码 URL
- sql-server - 执行 Excel VBA SQL 查询的最优雅方法是什么?
- html - 尽管尺寸固定,TD Rowspan 仍增加了额外的像素
- zos - 寻找以“IEWPLMH”开头的 z/OS 可运行文件的第一个记录布局
- javascript - 为什么我的 Vue js 应用在路由到其他组件时会失去焦点?
- flutter - 理解 = 飞镖中的运算符