Send_file在浏览中打开文件而不是下载它
请告诉我这是如何工作的,因为我不明白……这是我的简单代码:
路线:
get 'download' =>'pages#download'
我的行动:
def download send_file "#{Rails.root}/public/downloads/robots.zip", :type=>"application/zip"
并下载链接:
所以,当我点击链接时,我得到了这个:
图片http://sofzh.miximages.com/ruby-on-rails/GrqvQ3xHlbaYmz.jpg
看起来浏览器正在尝试显示zip文件内容……但是当我从浏览器(或刷新页面)打开操作时,它工作正常。
当我点击link_to
生成的链接时,为什么它不起作用?
Send_file在浏览中打开文件而不是下载它
试试这个
def download send_file("#{Rails.root}/public/downloads/robots.zip", :type=>"application/zip",:disposition=> "attachment; filename=robots.zip") end
和
<%= link_to "download", download_path ,target: '_self' , data-turbolinks="false" %>
添加disposition: "inline"
而不是disposition: "attachment"
对我有用。