我正在尝试提取上传的 zip 文件并将其内容存储在数据库中,每个文件一个条目。rubyzip 库几乎没有有用的文档。
有一个 assets 表,它有 key :string (文件名)和 data :binary (文件内容)。
我正在使用 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 设置数据?我必须使用临时文件吗?