是否有最佳目录将图像上传到heroku上?

时间:2013-03-15 17:45:07

标签: ruby-on-rails ruby heroku carrierwave

我正在使用carrierwave,我想更改存储图像的目录。

目前图片网址为/uploads/modelname/image/51/nameoffile.jpg

ImageUploader中的store_dir是

def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

我绝对不希望展示modelname 是否有一个公认的理想路径,图像应存储在heroku上?

2 个答案:

答案 0 :(得分:2)

Heroku不允许上传到他们的服务器。您需要使用其他存储介质,例如亚马逊的S3。

我实际上正在使用Parse(www.parse.com)API将图像存储在他们的解决方案中。但这取决于您需要如何访问图像。

答案 1 :(得分:1)

您可以将文件上传到Heroku dyno文件系统,但文件系统是易腐烂的,不会在您的dynos之间共享。这是一个Gist,展示如何在AWS S3中制作Carrierwave商店上传文件,这是一个更好的选择:https://gist.github.com/cblunt/1303386

以下是使用PaperClip完成此操作的Heroku指南:https://devcenter.heroku.com/articles/paperclip-s3