我正在使用芹菜来购买下载数据的应用。目录结构是:
~/.csl
我在proj文件夹中使用proj
__init__.py
celeryApp.py
tasks.py
startup.py
fetcher.py
运行芹菜。
我运行我的应用程序,通过运行celery worker --app=celeryApp:app -l info
来排队任务。 python startup.py
和startup.py
都导入fetcher.py
。在tasks.py
中,我创建了startup.py
中定义的类Fetcher
的对象,并将其作为参数传递给fetcher.py
中的任务runFetcher
。
这会导致错误
DecodeError:没有名为fetcher的模块
我需要做出哪些更改,以便我可以安全地将此类对象传递给任务?
更新:我将tasks.py
添加到import fetcher
这样做很好,因为这些任务与提取器密切相关。任何人都可以建议一个不需要在任务中导入fetcher的解决方案吗?