Python 芹菜保存组结果:AttibuteError

Python 芹菜保存组结果:AttibuteError,python,flask,celery,Python,Flask,Celery,我正在尝试保存组结果以供以后检索: job = group([ add.s(1, 1), add.s(2, 2) ]) result = job.apply_async() result.save() from celery.result import GroupResult saved_result = GroupResult.restore(result.id) 但是,我得到了一个错误: *** AttributeError: 'DisabledBackend' obje

我正在尝试保存组结果以供以后检索:

job = group([
    add.s(1, 1),
    add.s(2, 2)
])
result = job.apply_async()
result.save()

from celery.result import GroupResult
saved_result = GroupResult.restore(result.id)
但是,我得到了一个错误:

*** AttributeError: 'DisabledBackend' object has no attribute '_restore_group'
我有后端
芹菜\u结果\u后端=redis://localhost:6379/0“
在我的配置中设置


如何解决此问题?

您需要使用芹菜应用程序对象进行恢复

要使用中的“芹菜入门”作为起点:

tasks.py:

from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')

@app.task
def add(x, y):
    return x + y
您的代码:

job = group([
    add.s(1, 1),
    add.s(2, 2)
])
result = job.apply_async()
result.save()
return result.id
其他地方:

from my.app.tasks import app

result = app.GroupResult.restore(some_id)

您的示例显示了您在与应用异步相同的上下文中运行
restore
——我假设这是一个简化,并且您知道您不需要使用
restore
,除非您处于不同的进程中,或者由于某种原因无法将结果对象传递到新上下文。

您需要还原使用芹菜应用程序对象

要使用中的“芹菜入门”作为起点:

tasks.py:

from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')

@app.task
def add(x, y):
    return x + y
您的代码:

job = group([
    add.s(1, 1),
    add.s(2, 2)
])
result = job.apply_async()
result.save()
return result.id
其他地方:

from my.app.tasks import app

result = app.GroupResult.restore(some_id)

您的示例显示,您在与应用异步相同的上下文中运行
restore
——我假设这是一个简化,并且您知道您不需要使用
restore
,除非您处于不同的进程中,或者由于某种原因无法将结果对象传递到新上下文。

是否重新加载芹菜更改后?是的,我在所有更改后重新加载芹菜。在这里测试并工作更改后你重新加载芹菜了吗?是的,我在所有更改后重新加载芹菜。在这里测试并工作