2016-07-10 3 views
0

플라스크 애플리케이션을 만들고 있는데, 경로 템플릿을 렌더링 할 수 있는지 궁금 해서요, 기능 완료 후 사용자를 리디렉션합니다. 현재 Python 2.7을 사용하고 있습니다 여기에 내 예가 있습니다플라스크 - 비동기 적으로 템플릿 렌더링

@app.route('/loading/matched') 
def match(): 
    time_match() 
    return render_template('matched.html') 

def time_match(): 
    # match two users based on time 
    sleep(3) # pretend to be doing 
    return redirect('/loading/generation') 

어디서부터 시작 해야할지 모르겠습니다. 내가 사용해야하는 도서관이 있습니까?

+0

즉, 렌더링 된 템플릿). – dirn

답변

1

내게는 클라이언트 쪽과 비슷합니다. 로딩 바 같은 것을 원하십니까?

클라이언트가 진행 상황을 표시하는 동안 서버 측에서 과중한 작업량을 시작하는 ajax 경로를 제공 할 수 있습니다. 일단 작업 부하가 완료되면 ajax를 통해로드되는 템플릿을 렌더링합니다.

asycn 워크로드의 경우 Celery을 볼 수 있습니다.이 라이브러리는 훌륭한 라이브러리입니다. 심지어

더 많은 소스 Integration in Flask ... 별도의 서버에 대한 작업을 수행 할 수

당신이 (응답 본문을 다시 보내기 시작 한 후에는 (재 지정으로 향했다되는) 헤더를 보낼 수 없습니다
+0

[Async with Flask and Celery]에 대한 좋은 자습서 (http://blog.miguelgrinberg.com/post/celery-and-the-flask-application-factory-pattern) – Hannes

+0

빠른 응답 Hannes! 기본적으로이 경로에서 Spotify API에 대한 몇 가지 요청을합니다. API가 완료되어 재생 목록을 반환하는 데 약 10 초가 걸립니다. 그 요청을하는 동안보기를 렌더링하고 싶습니다 – einfalles

+0

그래서 Spotify에 대한 요청은 renderd 템플릿에 아무런 영향을 미치지 않습니까? 사용자 측의 지연을 없애고 싶습니까? – Hannes

관련 문제