Tôi đã đập đầu của tôi chống lại điều này trong vài ngày. Gần đây, người tải lên hình ảnh của tôi đã ngừng hoạt động đúng cách. Tôi đã nghiên cứu một số khả năng, nhưng không có giải pháp được đề xuất nào có tác dụng trong trường hợp của tôi.Lỗi PaperClip NotIdentifiedByImageMagickError khi chia tỷ lệ hình ảnh
Các thông báo lỗi là:
#<Paperclip::Errors::NotIdentifiedByImageMagickError:Paperclip::Errors::NotIdentifiedByImageMagickError>
Dưới đây là chi tiết:
- Mac OS X 10.8.3
- ImageMagick 6.8.4-4 2013-03-29
- libtool =>/usr/bin/libtool
- Đường ray 3.2.13
- Ruby 1.9.3p19 4
development.rb
chứa đường dẫn thích hợp (và tôi đã xác minh rằng nó là đúng bằng which identify
)
Paperclip.options[:command_path] = "/usr/local/bin/"
Gemfile.lock
(phần liên quan)
paperclip (3.4.1)
activemodel (>= 3.0.0)
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.5.0)
MODEL (tôi cập nhật một đối tượng lớp học , nhưng hình ảnh nằm trong mô hình vị trí. (Classroom has_one :location, :as => :locatable)
Mẫu location.rb
class Location < ActiveRecord::Base
## Paperclip method for uploading location images
has_attached_file :picture, :styles => {:show => "1200x500#", :medium => "300x300#", :thumb => "100x100>"}, :convert_options => {:show => "-gravity center"}
has_attached_file :building_sign, :styles => { :show => ["1200x500#", :jpg], :medium => ["300x300#", :jpg], :thumb => ["100x100#", :jpg] }, :convert_options => {:show => "-gravity center"}
belongs_to :locatable, :polymorphic => true
belongs_to :location_type
validates :name, :presence => true
validates :latitude, :presence => true,
:length => {:within => 9..18},
:numericality => true
validates :longitude, :presence => true,
:length => {:within => 9..18},
:numericality => true
end
khiển classrooms_controller.rb
def update
@classroom = Classroom.find_by_facility_code_heprod(params[:id].upcase)
respond_to do |format|
if @classroom.update_attributes(params[:classroom])
format.html { redirect_to(@classroom, :notice => 'Classroom was successfully updated.') }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @classroom.errors, :status => :unprocessable_entity }
end
end
end
Những gì tôi đã cố gắng.
- Tôi đã đảm bảo rằng tên hình ảnh đơn giản (USB2230.jpg), không có dấu hai chấm.
- Tôi đã cập nhật phiên bản ImageMagick thành phiên bản mới nhất.
- Tôi cũng đã tải xuống lại và cài đặt lại Công cụ CommandLine cho 10.8.3 (ai đó đã đề xuất rằng sự cố có thể liên quan đến một công cụ libtool lỗi thời).
- Tôi đã khởi động lại máy tính.
Tôi đã thử các biến thể trên các phiên bản đá quý bao gồm
# variation 1 gem 'paperclip', '~> 2.8.0' gem "cocaine", "=0.3.2" # variation 2 gem "paperclip", "~> 3.4.0" gem "cocaine", "= 0.4" # variation 3 (which is what is reflected in the included Gemfile.lock info above). gem "paperclip", "~> 3.4.0"
Nếu tôi tháo mở rộng quy mô,
:styles => {:show => "1200x500#", :medium => "300x300#", :thumb => "100x100>"},
:convert_options => {:show => "-gravity center"}
các công trình tải lên, nhưng tôi loại cần mở rộng quy mô ;-)
Có ai có thể thấy thứ gì đó tôi bị thiếu không?
Phiên bản đã có giá trị 3.4.1 và cocaine ở mức 0.5.0 (như đã nêu trong Gemfile.lock được liệt kê ở trên). – humbledaisy