相关疑难解决方法(0)

如何在Rails 5.xx应用程序中以Sip格式从S3下载多个文件?

我正在实现允许用户从S3下载单个文件或多个文件的功能。单个文件下载正常,但是对于多个文件,我在Heroku上收到错误消息,

Errno::ENOENT (No such file or directory @ rb_file_s_lstat )

用于以zip格式下载文件的控制器代码段如下所示,

def method_name
   zipfile_name = "#{Rails.root}/public/archive.zip"
   Zip::File.open(zipfile_name, Zip::File::CREATE) do |zipfile |
     @transfer.transfer_attachments.each do |attachment | 
       zipfile.add(attachment.avatar.file.filename, attachment.avatar.url)
     end
   end
   send_file(File.join("#{Rails.root}/public/", 'archive.zip'), : type =>
'application/zip', : filename => "#{Time.now.to_date}.zip")
end
Run Code Online (Sandbox Code Playgroud)

宝石文件

ruby '2.3.1'

gem 'rails', '~> 5.0.1'

gem 'rubyzip', '>= 1.0.0'

gem 'zip-zip'
Run Code Online (Sandbox Code Playgroud)

此zipfile功能可与本地存储的文件一起正常使用。

ruby-on-rails heroku amazon-s3 zipfile

4
推荐指数
1
解决办法
1421
查看次数

标签 统计

amazon-s3 ×1

heroku ×1

ruby-on-rails ×1

zipfile ×1