保存图像未正确显示在heroku上

时间:2013-01-02 15:50:08

标签: heroku carrierwave

我正在使用Rails 3.2.6并使用carrierwave上传图像。当我上传图像时,它显示正常,其图像网址也运行良好。但是当我在heroku上推送下一个git commit时。

       git push staging master    

比我上传的所有图片都不显示且图像路径不起作用 为什么呢?

请任何人都知道问题在发生了什么。

Thnaks

2 个答案:

答案 0 :(得分:1)

您是否使用s3(https://github.com/jnicklas/carrierwave#using-amazon-s3)设置了carrierwave? Heroku有一个只读文件系统(https://devcenter.heroku.com/articles/s3)。

答案 1 :(得分:1)

虽然您的上传工作正常 - 当您推送新代码或重启应用程序时,您将无法上传任何内容。

Heroku使用Ephemeral文件系统,因为每个dyno都会收到最初部署的代码的单独副本(slug),因此上传只会存在于处理上传的dyno上(https://devcenter.heroku.com/articles / DYNOS#临时文件系统)。

您需要使用外部持久性数据存储,如Amazon S3,Rackspace Files等 - 幸运的是,使用Carrierwave更新它以使用它,因为它支持开箱即用。