0

如果文件是图片('image/jpeg'、'image/png'、'image/gif'),我必须创建 300px 宽度的缩略图,如果文件有其他扩展名,则没有缩略图。我正在使用 Paperclip 进行文件上传(它在没有条件的情况下工作得很好......)。

:file 是上传的文件,如果是图像,Paperclip 应该创建它的中等版本。

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

但这似乎不起作用。希望大家能找到解决办法。谢谢!

4

1 回答 1

0

如果不是图像,缩略图创建应该会失败。如果whiny不是真的,那就应该结束了。(大多数情况下;根据此答案,您需要检查缩略图是否存在。)

如果您想完全控制该过程,您可以打开默认Thumbnail处理器以添加/更改其正常选项/处理,或者将其用作创建自己的处理器的指南(请参阅Paperclip github 页面上的“后处理”部分)。

您还可以玩一些带有lambdastyle的游戏,也许为非图像文件创建一个默认的“非图像”缩略图。

于 2012-01-01T20:36:09.453 回答