Django的。芹菜延迟()不打印到终端

时间:2016-03-01 02:10:35

标签: django celery

我在Django中有一个简单的Celery任务:

from celery.decorators import task

@task
def celery_test(x, y):
    print x + y
    return None

我在视图中称呼它:

...
def get_queryset(self, *args, **kwargs):
        celery_test.delay("uno ", "dos")
        ...

所以,当我用delay调用函数时,它不会向终端打印任何内容,为什么?,...当我在delay之外调用它时,它会正确打印。我正在使用RabbitMQ服务器,运行正常。

1 个答案:

答案 0 :(得分:1)

检查您的日志文件中的芹菜。它可能会在那里打印出来。

修改

当您使用.delay()时,任务与终端分离,您打印的所有内容都是这样的:

AsyncResult: 3df665f1-547d-49bb-937b-8190a63bfeb7.

您将代码传递给代理并且代理无法打印回终端。但是如果您的代码中有打印语句,它们将被打印到您的芹菜日志中。