2016-12-07 50 views
0

我是RoR的新手。我正在嘗試爲mp3文件創建一個下載操作。 我的應用程序正在下載一個帶有歌曲參考的文本文件,而不是mp3。download mp3/send_data mp3 Rails 5

任何幫助將不勝感激!

控制器>

def download 
    @song = Song.find_by(params[:file]) 
    obj = @song 
    send_data obj 
    return 
end 

byebug:

(byebug) send_data obj 
    Rendering text template 
    Rendered text template (0.1ms) 
Sent data (89.1ms) 
"#<Song:0x007fb0c9802a38>" 

回答

0

您使用的是帶有默認SEND_DATA所以它會下載文本文件。 對於你可以使用的文件send_file

+0

當我使用send_file我得到的錯誤:沒有隱式轉換Aws :: S3 :: Object到字符串 – catch22

+0

Achh所以你使用AWS,好吧,所以你可以使用'aws- sdk'寶石。和這個http://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html – Argonus