1
我是芹菜新手,並開始瞭解它是如何工作的。不過,我在理解如何從類方法內部更新狀態方面遇到了一些麻煩。芹菜update_state裏面的方法
views.py
@app.route('/',methods=['POST'])
def foo_bar():
task = foo_async.apply_async()
return json.dumps({}),202
background_task.py
@celery.task(bind=True)
def foo_async(self):
t = Test()
t.run()
return json.dumps({'progress':100})
test.py
class Test(Task):
def __init__(self):
self.foo = 'bar'
def run(self):
for i in range(0,10):
print 'Current : ',i
self.update_state(state='PROGRESS',meta={'current':i})
time.sleep(4)
,但我得到發出請求後,此錯誤:
[...] return task_id.replace('-','')
AttributeError: 'NoneType' object has no attribute 'replace'
因此,我認爲這個問題是關於ID但我不如何解決。
也許有更好的方法從我的方法內更新?
非常感謝!我知道這是類似的東西,但無法弄清楚... – Orelus 2015-04-06 16:59:21