我有一个结构如下的程序:
program/worker.py
/package/sub-package/file.py
usecase.py
我在worker.py上声明了芹菜的应用程序:
from celery import Celery
app = Celery('program.worker',
broker=redis_broker,
include=['program.package.sub-package.file'])
任务在file.py上编写如下:
from program.worker import app
class File():
@propery
somefunction():
@app.task
celeryFunction(param1):
print(param1)
当我从usecase.py中的函数调用任务时:
from program.package.sub-package.file import celeryFunction
def run(param):
celeryFunction.delay(param)
我收到错误,但是芹菜工作者日志没有打印任何关于错误的信息,我有什么想念吗?
谢谢
答案 0 :(得分:0)
我需要提出:
@app.task(bind=True)
我把它放在任务函数上后,我可以毫无错误地调用它。
谢谢大家!