アップロードされた zip ファイルを抽出し、その内容をデータベースに保存しようとしています。ファイルごとに 1 つのエントリです。rubyzip ライブラリには、有用なドキュメントがほとんどありません。
key :string (ファイル名) と data :binary (ファイルの内容) を持つ assets テーブルがあります。
私は rubyzip ライブラリを使用しており、これまでに作成しました:
Zip::ZipFile.open(@file_data.local_path) do |zipfile|
zipfile.each do |entry|
next if entry.name =~ /__MACOSX/ or entry.name =~ /\.DS_Store/ or !entry.file?
asset = self.assets.build
asset.key = entry.name
asset.data = ?? # what goes here?
end
end
ZipEntry からデータを設定するにはどうすればよいですか? 一時ファイルを使用する必要がありますか?