RubyでZIP圧縮するライブラリはrubyzipがよさそうです。同様のライブラリにziprubyがありますが、こちらは最近はメンテナンスされていないようなので、私はrubyzipを使っています。 Railsではtmpディクレクトリにファイルを書き出す処理と組み合わせて使うとよさそうです。私の場合、最近は以下の様なコードを書きました。tmpディレクトリのファイルは、処理が終わった後で削除するようにしています。 zipfile_name = "#{Rails.root}/tmp/sample.zip" Zip::File.open(zipfile_name, Zip::File::CREATE) do |zipfile| pdfs.each_with_index do |pdf, i| # Two arguments: # - The name of the file as it will
![Railsで複数ファイルをZIP圧縮してダウンロードさせる方法 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/cbc1f0f7d57c0fbd7dc87d81bc07542c36a83eff/height=288;version=1;width=512/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fqiita-fb-2887e7b4aad86fd8c25cea84846f2236.png)