복붙노트

[RUBY-ON-RAILS] 새 페이지 redirect_to 다음 SEND_DATA로 데이터 내보내기 - 레일은 어떻게합니까?

RUBY-ON-RAILS

새 페이지 redirect_to 다음 SEND_DATA로 데이터 내보내기 - 레일은 어떻게합니까?

나는 사용자가 생성 CSV 파일을 다운로드 할 수있는 레일 응용 프로그램을 가지고있다. 파일 다운로드가 완료되면, 나는 새로운 URL 또는 조치로 사용자를 리디렉션하고 싶습니다. SEND_DATA 후 리디렉션을 할 수있는 트릭이 있습니까?

나는 이런 식으로 뭔가를 (작동하지 않는)하고 싶은 :

send_data(output,:type => content_type,:filename => "myfile.csv")
redirect_to :controller => 'my_controller', :action => 'download_done'

해결법

  1. ==============================

    1.당신이 컨트롤러 메소드에 후 아무것도 할 수 SEND_DATA는 렌더링입니다.

    당신이 컨트롤러 메소드에 후 아무것도 할 수 SEND_DATA는 렌더링입니다.

    모든 주변의 방법은 자바 스크립트를 포함한다. 여기에 내가 함께 결코 정말 좋아하는 해킹 방법 중 하나입니다 :

    결국 나는 백그라운드 작업으로 파일 생성을 돌렸다. 그런 다음 사용자는 파일을 얻기 위해 (후속 리디렉션이 필요하지 않은)를 작업 페이지에 갔다.

  2. from https://stackoverflow.com/questions/699113/rails-how-do-i-export-data-with-send-data-then-redirect-to-a-new-page by cc-by-sa and MIT license