0

我有一个简单的问题,我们有以下内容:

@task()
def upload_image(request):
     var = request.POST

     # ... do something

我们在另一个方法中称它为这个方法的延迟,如下所示:

job = upload_image.delay(request)

这显然不起作用,在我阅读之后,您可以将消息传递给一个简单的 celery 任务argargs或者kwargs**但我只想传递一个简单的对象,而不是字符串或字符串列表,无论如何在 celery 中执行此操作?

问候!

4

3 回答 3

0

正如您可以从文档中阅读的那样,您的示例应该可以工作。

from celery import task

@task()
def add(x, y):
    return x + y

add.delay(2, 2)
于 2013-09-01T16:11:48.333 回答
0

只要您使用标准的泡菜序列化程序,这应该可以工作。

于 2015-03-31T10:04:34.320 回答
0

这不适用于标准pickler。在此处查看更多信息(基本上是重复的):将 django 请求对象传递给 celery 任务

于 2017-08-29T08:19:03.780 回答