我还没有使用像Amazon S3这样的服务,那么我应该在文件结构中存储上传的用户图像?我想避开公共目录,因为图像是私有的。
答案 0 :(得分:2)
您是否使用插件来处理上传内容?其中许多允许您指定存储文件的路径,如果您想避开公用文件夹,合理的建议是"#{RAILS_ROOT}/uploads/images/"
这非常关乎个人品味。
例如,在carrierwave上传程序中,这会将项目放在RAILS_ROOT下方的上传文件夹中,该文件夹不可公开访问。
def store_dir
"#{RAILS_ROOT}/uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
https://github.com/carrierwaveuploader/carrierwave#changing-the-storage-directory