我正試圖在Spree插件中解壓縮一個文件。NameError - 未初始化的常量Zip
在看起來像這樣的模塊中定義瞭解壓縮方法。
module ImportImages
class Zipper
def self.unzip(zip, unzip_dir, remove_after = false)
Zip::File.open(zip) do |zip_file|
zip_file.each do |f|
f_path=File.join(unzip_dir, f.name)
FileUtils.mkdir_p(File.dirname(f_path))
zip_file.extract(f, f_path) unless File.exist?(f_path)
end
end
FileUtils.rm(zip) if remove_after
end
end
end
我在我的Gemfile中包含了rubyzip gem。
gem 'rubyzip'
gem 'zip-zip'
當試圖運行它時,我收到以下錯誤。
NameError - uninitialized constant ImportImages::Zipper::Zip:
我已經嘗試了每一個在stackoverflow和其他網站提供的解決方案。我試着降級現在版本爲1.2.0的rubyzip,並添加require 'zip'
或require 'zip/zip'
。兩者都返回加載錯誤。
我已嘗試將require 'zip/filesystem'
添加到課程中。但得到
LoadError - cannot load such file -- zip/zipfilesystem
任何解決方案?
'寶石 'rubyzip', '<1.0.0''你嘗試過嗎? –
仍然收到相同的錯誤。如果試圖添加require,我得到'不能加載這樣的文件 - zip/zipfilesystem' – Aswathy
https://github.com/rubyzip/rubyzip#important-note您是否看過這個 –