Image error using MiniMagick with carreirwave in Rails 3

I am trying to crop an image using a mini magic stone with a carrier. Before creating a user, the following problem occurs.

Errno::ENOENT in UsersController#create No such file or directory - identify -ping /tmp/mini_magick20120919-5600-ai31ph.jpg 

My code: model /user.rb

 class User < ActiveRecord::Base attr_accessor :crop_x, :crop_y, :crop_h, :crop_w attr_accessible :username,:profile after_update :reprocess_profile, :if => :cropping? #field :username mount_uploader :profile, ProfileUploader def cropping? !crop_x.blank? and !crop_y.blank? and !crop_h.blank? and !crop_w.blank? end def profile_geometry #img = MiniMagick::Image.open(self.profile.large.path) #@geometry = {:width => img[:width], :height => img[:height] } end private def reprocess_profile #puts self.profile.large.path #img = MiniMagick::Image.open(self.profile.large.path) #crop_params = "#{crop_w}x#{crop_h}+#{crop_x}+#{crop_y}" #img.crop(crop_params) #img.write(self.profile.path) #profile.recreate_versions! end end 

bootloader / profile_uploader.rb

 # encoding: utf-8 class ProfileUploader < CarrierWave::Uploader::Base # Include RMagick or ImageScience support: #include CarrierWave::RMagick # include CarrierWave::ImageScience include CarrierWave::MiniMagick # Choose what kind of storage to use for this uploader: storage :file # storage :fog # Override the directory where uploaded files will be stored. # This is a sensible default for uploaders that are meant to be mounted: def store_dir "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" end def extension_white_list %w(jpg jpeg gif png) end version :large do end version :thumb do process :resize_to_fill => [100, 100] end end 

What is the problem? offer any solution.

+4
source share
1 answer

You need to install imagemagick. In ubuntu:

 sudo apt-get install imagemagick 
+2
source

Source: https://habr.com/ru/post/1435028/


All Articles