2010-03-17 50 views
3
class User < ActiveRecord::Base 

    has_attached_file :photo, :styles => { :square => "100%", :large => "100%" }, 
    :convert_options => { 
     :square => "-auto-orient -geometry 70X70#", 
     :large => "-auto-orient -geometry X300" }, 
    :storage => :s3, 
    :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", 
    :path => ":attachment/:id/:style.:extension", 
    :bucket => 'mybucket' 

    validates_attachment_size :photo, 
    :less_than => 5.megabyte 

end 

工作的本地機器上很大,但給我一個錯誤在Heroku:There was an error processing the thumbnail for stream.20143 的事情是我想自動定向照片尺寸調整之前,讓他們調整正確。如何將額外的轉換選項傳遞給Heroku上的回形針?

唯一的工作現在變種(感謝jonnii)是在調整無自動定向:

... 
as_attached_file :photo, :styles => { :square => "70X70#", :large => "X300" }, 
     :storage => :s3, 
     :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", 
     :path => ":attachment/:id/:style.:extension", 
     :bucket => 'mybucket' 
... 

如何通過額外的轉換選項,回形針在Heroku?

UPD

我發現,在 「 - 自動定向」 選項的麻煩。 Heroku使用的ImageMagick版本似乎破壞了這個選項。我創建從回形針的標準縮略圖繼承自回形針圖像處理器:

module Paperclip 

    class Ao < Thumbnail 

    def transformation_command 
     super + " -auto-orient" 
    end 

    end 
end 

它可以完美運行在本地機器上,但未能在Heroku。

回答

2

這些是我使用的尺寸。他們都很好地工作在Heroku:

SIZES = { 
    :original => "640x480>", 
    :thumb => "150x150#", 
    :mini => "60x60#", 
    :micro => "30x30#" 
} 

確保的回形針你的寶石的版本是一樣的Heroku的。您可以在.gems文件和environment.rb中指定特定的寶石版本,以確保它們排列齊整。

我不確定您的convert_options爲什麼導致問題,但如果我沒有記錯,paperclip會直接使用ImageScience,您選擇的選項可能與只讀的heroku文件系統不兼容。

如果這是至關重要的,你現在需要一個答案,我會在heroku上提供支持票。如果您收到回覆,請確保將其發回到這裏!

相關問題