我使用Rails4和Carrierwave上传文件,我让它正常工作 在阅读了aritcle Store attachments in hashed paths之后,我开始使用散列路径来存储图像。
我想用这样的路径保存我的文件:public\uploads\a0190f068\47fab52d31\82d24bb\9b4d6f.jpg
而不是public\uploads\photo\image\156\filename.jpg
和carrierwave。
我们非常感谢您提供的任何建议或练习。
\上传\ image_uploader.rb
class ImageUploader < 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_fill => [150, 150]
end
end
\ views \ articles \ _article.html.erb
<% article.photos.each do |photo| %>
<%= image_tag(photo.image_url(:thumb).to_s, class: :thumb) if photo.image? %>
<% end %>