有人问了这个问题,但没有给出答案……我遇到了同样的问题。
我正在使用carrierwave上传文件一切都很好,直到我想创建拇指
图像直接保存在 tmp 中,但保持相同的大小......
我的 avatar_uploader.rb 文件如下所示:
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :thumb do
process :resize_to_limit => [200, 200]
end
我的观点有以下几点:
<% for image in @posts %>
<%= image_tag image.avatar_url(:thumb) if image.avatar? %>
<%= image.title %>
<% end %>
当我不包含 (:thumb) 时,我会看到完整的图像......但是当我包含 (:thumb) 时,我会收到以下错误:
Version thumb doesn't exist!
下面是我的模型设置
class Post < ActiveRecord::Base
attr_accessible :comments, :frame, :title, :twitter, :avatar
belongs_to :user
mount_uploader :avatar, AvatarUploader
end
我可以看到创建了一个 tmp 目录,但是图像没有调整大小...我安装了 imagemagick 和 rmagick...
谢谢