我正在尝试一起使用烧瓶和芹菜。目前我有一个像这样的项目结构:
+-Project_root
|-celeryconfig.py
|-config.py
|
+-flask_react_app
|-__init__.py
|-wsgi.py
|-wsgi_aux.py
|-task.py
|-flask_react_app.py
当我运行命令celery worker --app flask_react_app
时,我收到错误:
ImportError: import_string() failed for 'config.DevelopmentConfig'. Possible reasons are:
- missing __init__.py in a package;
- package or module path not included in sys.path;
- duplicated package or module name taking precedence in sys.path;
- missing module, class, function or variable;
Debugged import:
- 'config' not found.
我的config.py只是:
import os
class Config:
DEBUG = False
SQLALCHEMY_DATABASE_URI = os.environ['DATABASE_URL']
SQLALCHEMY_TRACK_MODIFICATIONS = False
SOCKETIO_MESSAGE_QUEUE = os.environ['CELERY_BROKER_URL']
CELERY_CONFIG = {}
class DevelopmentConfig(Config):
DEBUG = True
class ProductionConfig(Config):
pass
class TestingConfig(Config):
TESTING = True
SQLALCHEMY_DATABASE_URI = 'sqlite://'
CELERY_CONFIG = {'CELERY_ALWAYS_EAGER': True}
我无法理解为什么烧瓶应用程序无法找到配置,因为它是一个带有简单字符串的环境变量'config.DevelopmentConfig'
我已将项目中的相对分支链接起来,以减少此问题中的代码量。 https://github.com/jbevan4/flask_react_app/tree/flask_socketio_sql_alchemy_intergation