2016-03-03 51 views
1

我想在Heroku rails服務器上使用ImageMagick(rmagick gem)裁剪圖像。這裏是我的代碼:Heroku ImageMagick給出錯誤:ArgumentError(在此圖像列表中沒有圖像):

class PhotoUploader < CarrierWave::Uploader::Base 

include CarrierWave::RMagick 
#include CarrierWave::MiniMagick 

    storage :file 

    def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
    end 

    def crop 
    if model.crop_x.present? 
     manipulate! do |img| 
     x = model.crop_x.to_i 
     y = model.crop_y.to_i 
     w = model.crop_w.to_i 
     h = model.crop_h.to_i 
     img.crop!(x, y, w, h) 
     puts "officially cropped!" 
     end 
    end 
    end 

    version :standard do 
    process :crop 
    resize_to_limit(2000, 2000) 
    end 

end 

下面是它一直在我拋出錯誤:

2016-03-03T12:18:22.236892+00:00 app[web.1]: Completed 500 Internal Server Error in 296ms 2016-03-03T12:18:22.243033+00:00 app[web.1]: 2016-03-03T12:18:22.243040+00:00 app[web.1]: ArgumentError (no images in this image list): 2016-03-03T12:18:22.243041+00:00 app[web.1]:
app/uploaders/photo_uploader.rb:21:in `crop' 2016-03-03T12:18:22.243046+00:00 app[web.1]:

任何想法?

回答

0

您將需要包含ImageMagick buildpack。沒有它,Heroku不包含rmagick的必要文件。 https://github.com/ello/heroku-buildpack-imagemagick

這也需要你運行多個buildpack。 https://devcenter.heroku.com/articles/using-multiple-buildpacks-for-an-app

+0

這是你正在談論的buildpack嗎? https://github.com/ello/heroku-buildpack-imagemagick –

+0

是的,我打算包括它。 –

+0

我試過這樣做,但服務器崩潰:http://stackoverflow.com/questions/35832328/installing-imagemagick-buildpack-on-heroku-rails-cedar-14 –

相關問題