문제

내가 알고 있는 또 다른 스레드에서 이제 하지만 나는 아직도 이 문제에 직면한 후에도를 사용하여 모든 솔루션입니다.은 거기에 다른 어떤 방법을 생성하 zip 파일이 있는가?를 사용할 수 있습니 Ubuntu 시스템 명령?

 gem install rubyzip

require 'rubygems'
require 'zip/zip'

서 컨트롤러

하지만 나는 아직도 이 같은 오류 없음 같은 파일을 load--zip/지퍼 나도 모두와 루비 1.8.7 와 루비 1.9.2 레일 3.0.5 에서 우분투

당신이 좀 도와 주시겠어요?감사합니다.

도움이 되었습니까?

해결책 2

후에 지출의 많은 시간,마지막으로 생각 없는 부분입니다.사용하는 경우 rubyzip 보석,나는 또한 필요 zip/zip.

추가 이하도록 gemfile 을

gem 'rubyzip', :require => 'zip/zip'

다만 추가 gem 'rubyzip 작동되지 않습니다.

다른 팁

Gemfile에서 GEM 버전 0.9.9를 지정 하여이 문제를 해결했습니다.

gem 'rubyzip',  "~> 0.9.9"
.

루비 칩 (1.0.0)을 사용하면 오류가 발생했습니다. Rubyzip Gihub : 에 대한 메모가 있습니다.

Rubyzip 인터페이스가 변경되었습니다 !!!"zip / zip"과 zip을 요구할 필요가 없습니다. 클래스 이름이 제거 된 접두사.타사에 문제가있는 경우 GEMS 필수 루비 즈 루프 즈 다음 임시 수정 사항을 사용할 수 있습니다 :

# Place this line before your library or on the head of your Gemfile
gem 'rubyzip', '< 1.0.0'
.

@ eagor의 답을 빌드하십시오. rubyzip>= 1.0을 사용하고 싶지만 뒤로 호환성이 필요합니다. gemfile에 이것을 추가하십시오 :

gem 'zip-zip'
.

레거시 코드 업데이트를 저장합니다.

루비 칩을 1.0.0으로 업그레이드 할 때 require 'zip/zip'require 'zip'로 변경하십시오.

https://stackoverflow.com/a/19506372/567399

또한 unzipping 프로세스가 사용하는지 확인하십시오.

Zip::ZipFile.open(self.data) do |zipfile|
.

가 아닙니다

Zip::Zipfile.open(self.data) do |zipfile|
.

ZipFile의 Capital F는 차이를 만듭니다.

generacodicicetagcode에 문제가있는 다른 모든 사람을 위해이 글타래에 걸쳐이 글타래에 있습니다. 항상 외부 명령 줄 zip 유틸리티로 쉘을 꺼낼 수 있음을 기억하십시오.Google을 통해 찾을 수있는 여러 가지 무료 명령 줄 유틸리티가 있습니다.명령 줄 zip 프로그램을 설치하고 시스템 경로에 있는지 확인하고 루비 내에서 드라이브하려면 백틀 믹을 사용하십시오.물론 이것은 Heroku에서 실행중인 웹 응용 프로그램에서는 작동하지 않습니다.

내 경우에는 에서 변경해야했습니다.

Zip::File.open(...)
.

~

Zip::ZipFile.open(...)
.

물론 gemfile에 이것을 추가해야합니다.

gem 'rubyzip', :require => 'zip/zip'
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top