如何编写一个脚本(在Ruby / Rails中),它将为我的新回形针样式重新生成所有缩略图?

时间:2011-03-09 04:26:29

标签: ruby-on-rails paperclip

我有一个具有以下两种样式的Image模型:

:original => ['500x400!'],
:thumb    => ['75x54!',:jpg]

最后一种风格,:拇指,我刚刚修改了尺寸以使thubnails更大。

这适用于用户上传的新图片,但我不确定如何使用回形针循环浏览所有现有缩略图并调整其大小。

希望有人能就此如何提出一些建议。

谢谢!

2 个答案:

答案 0 :(得分:7)

有一个rake task

rake paperclip:refresh:thumbnails CLASS=YourModel

为了更加掌控,您还可以手动重新处理特定实例的缩略图:

some_model_instances.each do |instance|
  instance.photo.reprocess!
end

答案 1 :(得分:4)

Paperclip附带一个rake任务,它正是这样做的:

rake paperclip:refresh RAILS_ENV=production CLASS=Photo

在此示例中,上面将重新生成属于Photo类的所有附件。