J'ai migré mon application des rails 2.3 vers rails3 et j'ai un problème avec un trombone. J'ai vu qu'il y avait une branche pour rails3 sur git de trombone.Rails3 et Paperclip
J'ai donc ajouté "gem 'paperclip',: git => 'git: //github.com/thoughtbot/paperclip.git',: branch => 'rails3'" dans le fichier Gemfile et lancez l'installation du paquet de commandes . Une fois le trombone installé, le téléchargement a bien fonctionné, mais pas les styles. J'ai vu un hack pour le réparer.
# in lib/paperclip/attachment.rb at line 293
def callback which #:nodoc:
# replace this line...
# instance.run_callbacks(which, @queued_for_write){|result,obj| result == false }
# with this:
instance.run_callbacks(which, @queued_for_write)
end
Les styles sont ok après cela, mais je ne suis pas en mesure d'activer le processeur. Mon code est:
has_attached_file :image,
:default_url => "/images/nopicture.jpg",
:styles => { :large => "800x600>",
:cropped => Proc.new { |instance| "#{instance.width}x#{instance.height}>" },
:crop => "300x300>" },
:processors => [:cropper]
Mon processeur est situé dans RAILS_APP/lib/paperclip_processors/cropper.rb et contient:
module Paperclip
class Cropper < Thumbnail
def transformation_command
if crop_command and !skip_crop?
crop_command + super.sub(/ -crop \S+/, '')
else
super
end
end
def crop_command
target = @attachment.instance
trans = "";
trans << " -crop #{target.crop_w}x#{target.crop_h}+#{target.crop_x}+#{target.crop_y}" if target.cropping?
trans << " -resize \"#{target.width}x#{target.height}\""
trans
end
def skip_crop?
["800x600>", "300x300>"].include?(@target_geometry.to_s)
end
end
end
Mon problème est que je suis arrivé ce message d'erreur: non initialisée Paperclip constante :: Cropper Le processeur recadré n'est pas chargé.
Est-ce que quelqu'un a une idée pour résoudre ce problème?
Pour information mon application fonctionne bien sur les rails 2.3.4.
I final J'ai résolu le problème de la même façon que vous l'avez fait, sauf que j'ai installé un trombone comme un plugin ... Un peu moins moche: P – Arkan