我有一个安装Carrierwave上传器的简单模型。 Ruby版本2.2.3,Ruby on Rails 4.2.4,Imagemagick安装在mac(10.11.1 El Capitan)上。安装MiniMagick 4.3.6 gem;但是,我收到 上传器的 未定义方法流程错误。
宝石文件:
gem "fog-google"
gem 'carrierwave', github: 'carrierwaveuploader/carrierwave'
gem "mini_magick"
上传器已安装在模型上:
mount_uploaders :avatars, AvatarUploader
模型具有属性:avatars
avatar_uploader.rb :(为清晰起见,删除了注释行)
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
storage :file
def store_dir
'uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}'
end
process :scale => [300, 300]
def scale(width, height)
process :resize_to_fit => [400, 400]
end
version :thumb do
process :resize_to_fit => [50, 50]
end
def extension_white_list
%w(jpg jpeg gif png)
end
end
这可能是什么线索?
答案 0 :(得分:3)
我建议做
process :resize_to_fit => [400, 400]
而不是:
process :scale => [300, 300]
def scale(width, height)
process :resize_to_fit => [400, 400]
end