小编Dav*_*ite的帖子

无法从 Django 应用程序调用 Celery 任务(缺少位置参数)

好吧,我已经翻遍了所有 SO 帖子、Celery 文档等……但我就是想不通。无论我尝试什么或如何尝试从 Django 应用程序调用任务,Celery 都在抱怨我没有提供所需的参数。

“类型错误:add() 缺少 2 个必需的位置参数:'x' 和 'y'”。

我正在从他们的文档中遵循一个非常简单的示例……仅使用延迟,例如:

add.delay(1, 2)
Run Code Online (Sandbox Code Playgroud)

仍然是同样的错误。我也尝试过add.delay(x=1, y=2)celery.send_task("add", [1, 2])以及各种各样的其他方式,我见过在各种帖子中调用的任务,但都没有工作。

方法非常简单:

@shared_task
def add(x, y):
    return x + y
Run Code Online (Sandbox Code Playgroud)

我也试过它的名字,例如:

@task(name="my_add")
def add(x, y):
    return x + y
Run Code Online (Sandbox Code Playgroud)

结果一样。我还能缺少什么?

python django task delay celery

6
推荐指数
1
解决办法
2907
查看次数

标签 统计

celery ×1

delay ×1

django ×1

python ×1

task ×1