@shared_task装饰器不起作用



问题:@shared_task Decorator从自定义文件导入数据时不起作用。我的意思是,当我开始芹菜时,@shared_task下的所有任务都不会出现在任务列表中。

例如,在这种情况下,@shared_task装饰器不起作用:

from __future__ import absolute_import, unicode_literals
from celery import shared_task
from .models import foo

@shared_task
def my_foo_backup(id):
    my_foo = foo(....)
    ...
    ...

这是示例,当@shared_task工作时:

from __future__ import absolute_import, unicode_literals
from celery import shared_task

@shared_task
def my_foo_backup(id):
    my_foo = foo(....)
    ...
    ...

为什么?!?

解决该问题的解决方案是将import命令移入功能中。这样它可以正常工作,并且根据PEP8的规则。

from __future__ import absolute_import, unicode_literals
from celery import shared_task

@shared_task
def my_foo_backup(id):
    from .models import foo
    my_foo = foo(....)
    ...
    ...

相关内容

  • 没有找到相关文章

最新更新