2016-04-18 17 views
1

以下のようなコントローラアクションがあります。アイデアは、ブラウザで見るのではなくダウンロードを強制することです。デスクトップ上では、chrome、firefox、ieの両方でかなりうまく動作します。しかし、それはクロムモバイルiosではまったく動作しません。ちなみに、ファイルは非常に小さいので、私は#send_data経由でした。RailsでChromeを強制的にダウンロードする方法

def download 
    @attachment = current_listing.attachments.find(params[:id].to_i) 

    url = URI.escape(@attachment.url) 
    data = open(url).read 

    send_data data, type: 'application/octet-stream', disposition: 'attachment', filename: @attachment.file_name 
end 

答えて

2

ActionController::DataStream.send_data

の公式Railsの4ドキュメントによると、処分のキーのためにのみ利用可能な値は次のとおりです。「添付ファイル」とそれのデフォルトとして添付された「インライン」。

また、application/octet-streamもデフォルトで設定されています。

コマンド:

​​

+0

おかげで十分です、それは私のタイプミスでした。私はすでに「添付ファイル」に設定していますが、Chromeモバイルではまだ動作しません。 – Chamnap

関連する問題