加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails’link_to’立即下载图像,而不是在浏览器

发布时间:2020-12-17 01:21:27 所属栏目:百科 来源:网络整理
导读:我有一个link_to Rails帮助器,当点击时下载壁纸.但是图像正在加载到浏览器中,而不是立即下载. %= link_to "1920x1080",@download.wallpapers[1].wallpaper.url % 但是在同一时间,我有一个link_to Rails帮助程序,它下载了.exe格式的屏幕保护程序,但是在这里它
我有一个link_to Rails帮助器,当点击时下载壁纸.但是图像正在加载到浏览器中,而不是立即下载.
<%= link_to "1920x1080",@download.wallpapers[1].wallpaper.url %>

但是在同一时间,我有一个link_to Rails帮助程序,它下载了.exe格式的屏幕保护程序,但是在这里它的工作原理是:文件被立即下载.

<%= link_to "720p",@download.screensavers.first.screensaver.url %>

我应该添加或做什么,使图像不会在浏览器中打开,而是立即下载?

谢谢!

解决方法

一般来说,最简单的方法是在发送图像时设置相应的标题:
Content-Disposition: attachment; filename=&lt;file name.ext&gt;

如果从文件系统提供文件,send_file方法将允许您适当地设置此头文件:

http://api.rubyonrails.org/classes/ActionController/Streaming.html#method-i-send_file

如果文件存储在数据库中,可以使用send_data:

http://api.rubyonrails.org/classes/ActionController/Streaming.html#method-i-send_data

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读