我一直在使用回形针在Rails应用程序中上载和自动调整照片大小,我喜欢它。唯一的问题是我的疯狂经理决定每隔一个月就需要一个新的大小来显示照片。因此,我在我的照片模型中添加了一种新样式,这对于新照片很有用,但是预先存在的照片现在是一个问题。现在,我开始处理多张照片,因此需要一种编程方式来调整现有照片的大小。也许对于这种事情有一些回形针的窍门?如果不需要,我真的宁愿不必弄清楚RMagick并自己编写脚本。

最佳答案

您需要Paperclip::Attachment的reprocess!方法。参见the docs

class User < ActiveRecord::Base
  has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" }
end

# Console...
>> User.find_each { |u| u.avatar.reprocess! }

另外,根据reprocess!方法之前的注释,有一个paperclip:refresh Rake任务,可能会更容易。

10-07 21:05