2014-11-21 1 views
0

사용자가 자신의 모든 정보를 볼 수있는 프로필 페이지가 있습니다.사용자가 셀러리 작업을 시작하도록하고 작업 완료시 사용자에게 알려줍니다.

사용자가 특정 외부 정보를 가져올 수 있도록 버튼을 만들고 싶습니다.

셀러리 작업을 시작해야하고, 작업이 완료되면, 사용자가 "완료"로 메시지를 받아야 버튼

내가 어떻게 할 수 있습니까?

<a href="/start-task/">Pull external info</a> 

내 "시작 작업"보기 :

def start_task(request): 

    get_external_user_info.delay(user=request.user) 

    return HttpResponse("Task started") 

하지만 아약스 확인을 어떻게 작업이 완료되면?

다른보기가 필요합니까? 그 견해는 어떻게 생겼습니까?

답변

0

당신은

AsyncResult(id).state 

확인이 Celery task status

그 아약스이 ID를 사용하여 얻을 상태 후

x= get_external_user_info.delay(user=request.user) 
id = x.task_id 
return HttpResponse(id) 

을 TASK_ID 가야