我有一个附有上传器的模型“Image”。图像属于多个模型。我正在使用s3来托管我的文件。
现在我的路径是:“image / file.jpg”
上传图片后,我希望路径为“parent-model / image / file.jpg”。我怎么能做到这一点?
感谢。
file_uploader.rb
def store_dir
"#{model.class.to_s.underscore}"
end
image.rb
class Image < ActiveRecord::Base
belongs_to :imageable, :polymorphic => true
mount_uploader :file, FileUploader
end
答案 0 :(得分:0)
要将文件上传到正确的目录,您需要将store_dir
方法更改为
def store_dir
"#{model.imageable.class.to_s.underscore"/images/"
end
或者甚至
"#{model.imageable_type.underscore"/images/"
(你需要尝试第二个,如果以前持久存在,则应该有效。)