我正在尝试执行一项芹菜任务,除其他外,该任务与通过管道与特定Django视图进行通信。
我整天都在尝试从Django视图(views.py)导入celery任务文件(tasks.py),但没有成功。
我还检查了文件权限,但事实并非如此。
我已将要导入的文件(tasks.py)的路径添加到sys.path中,然后将其导入,但是我一直收到ImportError。但是,当尝试在同一文件夹(script1)上导入另一个脚本时,导入成功。
views.py
...
sys.path.append('/home/celery')
import script1 #SUCCEEDS
# Trying to import "/home/celery/tasks.py" here
import tasks #FAILS
...
tasks.py
...
@app.task
def start_operation(client,**kwargs):
# Pipe comes here
...
芹菜目录结构如下:
/home
├── celery
├── script1.py
tasks.py
以及Django proyect目录结构:
/myapp
├── myapp
├── views.py
谢谢。