Rails 3 - LoadError (невозможно загрузить такой файл - zip/zip)
Я использую rubyzip для zip файла csv, поэтому его можно скачать. Это отлично работает в режиме разработки. Но когда я попытался закрепить файл на производственном сервере (rackspace), я получил ошибку: LoadError (невозможно загрузить такой файл - zip/zip). Это вопрос пути? Кто-нибудь знает исправление?
В моем коде в этой строке вызывается ошибка: require 'zip/zip'
Я пробовал решение из здесь, но это не помогло.
Ответы
Ответ 1
У меня была та же проблема: ошибка, вызванная кодом "require" zip/zip, и решение из этого сообщения также не помогло.
После долгого исследования я обнаружил, что проблема заключалась в том, что мой запрос "zip/zip" был выполнен в отдельном
lib/exporters/package_exporter.rb
и по какой-либо причине "require" операторы не обрабатываются в папке "lib" по умолчанию.
Когда я переместил "require" zip/zip "" в начало моего
app/controllers/packages_controller.rb
проблема решена!
Ответ 2
Я исправил эту проблему, указав gem версию 0.9.9 в Gemfile:
gem 'rubyzip', "~> 0.9.9"
Использование rubyzip (1.0.0) вызвало ошибку.
Ответ 3
При обновлении rubyzip до 1.0.0 измените require 'zip/zip'
на require 'zip'
.
Ответ 4
У меня возникла проблема после добавления roo в проект Rails.
Roo нуждался в новом интерфейсе, что-то другое (какой-то другой камень) использовал старый интерфейс - поэтому большинство из этих ответов не работало (не удалось снизить версию rubyzip, rubyzip2 устарел, не требовал zip/zip в моем проекте).
Для меня работал кассио-кабральный ответ со ссылкой на страницу rubyzip github.
gem 'rubyzip', '>= 1.0.0' # will load new rubyzip version
gem 'zip-zip' # will load compatibility for old rubyzip API.
Ответ 5
У меня была аналогичная проблема с active_support, просто добавлена "zip" gem в мой Gemfile, и она отлично работала
Ответ 6
Я использую rubyzip2 gem, чтобы исправить эту проблему.
gem 'rubyzip2'
Ответ 7
какая работа для меня заключалась в установке 2 драгоценных камней:
gem install rubyzip
gem install zip
и в script положить
require 'rubygems'
require 'zip/zip'
Ответ 8
На странице github объясняется, что делать.
Интерфейс Rubyzip изменен!!! Нет необходимости делать "zip/zip" и Zip префикс в именах классов удален.
Если у вас есть проблемы с любыми драгоценными камнями третьих сторон, версию rubyzip вы можете использовать следующее обходное решение:
gem 'rubyzip', '>= 1.0.0' # will load new rubyzip version
gem 'zip-zip' # will load compatibility for old rubyzip API.