2012-01-01 125 views
0

如果文件是圖片('image/jpeg','image/png','image/gif'),並且沒有如果文件有另一個縮略圖,則必須創建300px寬度縮略圖延期。我使用Paperclip進行文件上傳(沒有條件,它工作得很好......)。If-Statement with Paperclip | Ruby on Rails

:文件是上傳的文件,如果是圖片,回形針應該創建一個介質版本。

class Paperplanes < ActiveRecord::Base 
    if validates_attachment_content_type :file, :content_type => ['image/jpeg', 'image/png', 'image/gif'] 
     has_attached_file :file, :styles => { :medium => "x300>" } 
    else 
     has_attached_file :file 
    end 
end 

但是,這似乎並不奏效。希望你們能找到解決辦法。謝謝!

回答

0

如果它不是圖像,縮略圖創建應該失敗。如果whiny不是真的,那應該是它的結尾。 (晴,你需要檢查縮略圖存在的話,按this answer。)

如果你想完全控制的過程中,你既可以打開默認Thumbnail processor添加/更改其正常的選擇/處理,或者將其用作創建您自己的處理器的指南(請參閱Paperclip's github page上的「後處理」部分)。

您也可以使用lambda style玩一些遊戲,也許可以爲非圖像文件創建默認的「非圖像」縮略圖。