从包含gallary的上传中下载所有图像或创建所有上传的zip文件

时间:2010-03-08 10:55:45

标签: ruby-on-rails

我在照片共享网站上,我想提供下载图库中所有可用图片的功能,我已经在画廊中找到了我可以通过@ gallery.uploads获得所有图片的关系,

现在我想要的是下载所有文件,或者是否可以创建任何zip文件,以便我们可以在库中下载包含上传的那个文件,

谢谢

1 个答案:

答案 0 :(得分:8)

使用rubyzip gem在服务器端创建zip文件:

   require 'zip/zip'

   Zip::ZipFile.open("my.zip", Zip::ZipFile::CREATE) {
    |zipfile|
    puts zipfile.read("first.txt")
    zipfile.remove("first.txt")
   }

将图像添加到zip文件并使用rails-application中的sendfile将文件发送到浏览器。请阅读Zip::Zipfilesendfile上的文档,了解缺失的位。