我有一个芹菜任务,它在运行时多次更新状态:
current_task.update_state(state='STARTED', meta={'doing': "some message"},)
当此任务返回时:
return row # row is a Django model instance
我得到的返回值:
>> res = task_above.delay()
>> res.result
u'16'
只是对象的id作为字符串,而不是pickle对象本身。
如果我删除update_state语句,我会在任务的元数组中获得正确的pickle对象(AsyncResult.result)
如何使用update_state并获得相同的返回值(pickle object)?
答案 0 :(得分:0)
我很惊讶你可以得到一个腌制的django模型实例,因为pickle只支持python原语。您是否确定您将django模型实例作为腌制结果?也许它不会通过芹菜而且它没有被腌制?
请参阅[此SO答案]了解有关酸洗django模型实例1的更多信息。