Ruby On Rails:创建csv文件并下载为.zip-archive

时间:2015-10-16 06:17:22

标签: ruby-on-rails-4

您好我已创建csv file,我想在我的rails应用程序中的.zip-file中下载该文件。请帮我。我无法做到这一点如何将该文件添加到zip并下载该zip文件。如何在rails中呈现该文件。

以下是我尝试过的一段代码,

     # method to create csv
     def to_csv
       CSV.generate do |csv|
         #build csv format of document
       end
     end

     # controller action to download zip
     def zip_download
       zip = Zip::File.open('document.zip', Zip::File::CREATE) do |zipfile|
               @documents.each do |document|
                # document.to_csv how to add this file .zip
               end
             end
       send_data zip, filename: "abc.zip", type: 'application/zip'
     end

1 个答案:

答案 0 :(得分:3)

您可以尝试:

zip.get_output_stream("#{yourcsvname}.csv") { |f| f.puts(yourdocument.to_csv) }

请检查此问题:Creating multiple csv-files and download all in one zip-archive using rails

我认为这就是你需要的。