运行环境,Mac 、ubuntu
rails 4.2.1
昨天刚做了rails文件上传,今天要做下载文件,没想到so easy 啊
1。页面添加下载链接
= link_to '下载', admin_file_download_path(resource.id)
2.controller里
def file_download resource = Resource.find(params[:format]) send_file "#{Rails.root}/public#{resource[:file_path]}"//下载文件的路径 end
3. routes.rb里添加路由
get '/admin/file_download'
ok , 完成!有没有很简单
4.如果你想指定下载后文件的名字
send_file(path, :filename => 'yourfilename')
然后再来看看 send_data 的使用方法
data = "我的文件内容" send_data( data, :filename => "filename.txt" ) //注意这时候的:filename不能省,否则会出现下载回来的东西打不开
此外还可以
data = "我的文件内容" file = "filename.txt" File.open(file, "w"){ |f| f << data } send_data(data)
相关推荐
`render_to_string`用于将视图模板渲染成字符串,`send_data`则将这个字符串作为CSV文件发送给客户端,并设置文件名为当前日期。 总之,通过`FasterCSV`库,我们可以轻松地在Ruby中导出CSV文件,无论是简单的数据...
2. 如果无法立即升级,可以考虑临时禁用ActionDispatch中的`send_data`和`send_file`方法,或者添加自定义的过滤器来限制文件路径的访问。 3. 对于公开的Rails应用,应确保所有敏感文件都不在Web根目录下,以防止...
3. 文件生成与下载:Rails 内置的 send_data 和 send_file 方法可用于在服务器端生成文件后发送到客户端下载。 五、源码学习步骤 1. 阅读项目 README 文件,了解基本用法和安装步骤。 2. 分析 models 文件,理解...
在Ruby on Rails(简称ROR)框架下,处理文件的上传与下载是一项常见的需求,尤其是在构建包含媒体内容的应用程序时。本文将基于给定的文件信息,详细阐述如何在Rails应用中实现文件的上传与下载功能,包括数据库...
在控制器中,你可以使用`send_data`或`send_file`方法,指定PDF内容和文件名,使用户能够下载或直接预览。 5. **模板语言支持**: Prawn Rails支持ERB和Haml模板语言,这意味着你可以在PDF模板中使用Ruby代码,...
- **应用场景**:Ruby在Web开发领域尤其是通过Ruby on Rails框架的应用更为广泛;Python则在科学计算、数据分析等领域拥有更强的优势。 #### 二、Ruby编程环境搭建 **2.1 安装Ruby** - **Windows平台**:可以通过...
def send_data_ssl(url, data) url = url + data $logger.info(url) begin uri = URI.parse(URI.escape(url)) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true # 日志记录 if ($logger != ...
为了加快下载速度,常见的做法是在下载之前压缩下载文件。你可能不知道如何处理。但 CI 可以方便地让你用 4 行代码完成此功能: 复制代码到剪贴板PHP 代码$name = 'mydata1.txt'; $data = 'the contents of my file...