いつもお世話になります。
現在railsでwebサイトを作成しており下記のようにファイルをダウンロードできる仕組みを作りました。
/xxx/yyyにアクセスするとdownloadのリンクが表示され、クリックで/xxx/yyy/dlにアクセスされファイルをダウンロードできる形です。ダウンロード後、このページから遷移したあとブラウザの戻るボタンでこのページに戻ると/xxx/yyy/dl
にアクセスされてしまうため勝手にダウンロードをしてしまいます。
ダウンロードリンクを含むルーティングについて適切な方法をご教示いただけないでしょうか。初歩的な質問で申し訳ございませんが、よろしくお願いいたします。
Ruby
1 2 3routes.rb 4get "/xxx/yyy" => 'downloads#show' 5get '/xxx/yyy/dl' => 'downloads#download' 6 7 8コントローラー側 9downloads.rb 10def download 11 filepath = Rails.root.join("/abc") 12 stat = File::stat(filepath) 13 send_file(filepath, :filename => "image.png", :length => stat.size) 14end 15 16def show 17 render "downloads/show" 18end 19 20 21View側 22show.html.erb 23<%= link_to 'download', "downloads/dl" %> 24
あなたの回答
tips
プレビュー