如何在Carriewave中重新处理不同版本的图像?

Jon*_*hiu 11 upload ruby-on-rails carrierwave

我创建了3个版本的我的头像:

process :resize_to_limit => [400, 400]  

   version :big_thumb do
     process :resize_to_limit => [80, 80]
   end

   version :small_thumb do
     process :resize_to_limit => [50, 50]
   end
Run Code Online (Sandbox Code Playgroud)

我写了一个裁剪功能来裁剪我的原始版本,这是有效的,但我似乎无法根据新裁剪的原始版本重新生成我的2个缩略图.

有任何想法吗?

ste*_*och 18

很抱歉,如果这不是你想要的,但是我从carrierwave docs中获取了这个

重新创建版本

您可能会遇到要追溯更改版本或添加新版本的情况.你可以使用recreate_versions!从基本文件重新创建版本的方法.这使用了一种天真的方法,它将重新上传和处理所有版本.

instance = MyUploader.new
instance.recreate_versions!
Run Code Online (Sandbox Code Playgroud)

或者在已安装的上传器上:

User.all.each do |user|
  user.avatar.recreate_versions!
end
Run Code Online (Sandbox Code Playgroud)