从检索taskset_id GroupResult芹菜?(Retrieving GroupResul

2019-07-04 10:24发布

我用芹菜组启动一组的芹菜任务中描述的官方文档

我也是存储组(使用taskset)ID为分贝,以轮询芹菜的taskset的状态。

job = group([
        single_test.s(1, 1),
        single_test.s(1, 2),
        single_test.s(1, 3),
    ])

result = job.apply_async()

test_set = MyTestSet()
test_set.taskset_id = result.id

# store test_set into DB

有没有办法获得GroupResult对象(即我的result从taskset的ID开始)? 喜欢的东西是什么在做这个问题 ,但芹菜团体合作。

我已经尝试过这样做:

r = GroupResult(taskset_id)

但它不工作,因为r.results()始终是空的。

我应该使用GroupResult.save()GroupResult.restore() 方法 ?

Answer 1:

是的,你必须保存的结果,然后将其还原。

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

from celery.result import GroupResult
saved_result = GroupResult.restore(result.id)

我有同样的问题,看到有关保存的提示后/恢复,最终想通了。



文章来源: Retrieving GroupResult from taskset_id in Celery?