【发布时间】:2016-12-22 22:00:33
【问题描述】:
对于我的 ruby-on-rails 应用程序上的图像上传,我使用 ruby gem 回形针,它在本地工作得很好。说到heroku上的虚拟主机,我想使用amazon s3来存储图片。但是每次我上传图片时,我都会收到消息
很抱歉,出了点问题。如果您是应用程序所有者,请查看日志以获取更多信息。
在网上有人说我必须使用比 v2.0 更早的“aws-sdk”,但不幸的是我的控制台说那时
未初始化的常量 aws
这样该网站就不再在本地主机上运行,但也不能在 heroku 上运行(我收到一个应用程序错误)。
所以我坚持使用 2.3,它也用于 heroku heorku website。
AWS信息(AWS_ACCESS_KEY_ID、AWS_BUCKET、AWS_REGION、AWS_SECRET_ACCESS_KEY...)和写/读权限应该是正确的
production.rb 部分如下所示
config.paperclip_defaults = {
storage: :s3,
s3_credentials: {
bucket: ENV.fetch('AWS_BUCKET'),
access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
s3_region: ENV.fetch('AWS_REGION'),
}
}
Gemfile
gem 'paperclip', '~> 4.3', '>= 4.3.6'
gem 'aws-sdk', '~> 2.3'
有人知道我可以做些什么来使它工作吗?
【问题讨论】:
-
你为什么不首先检查日志文件,因为消息明确要求你这样做?
-
我试过了,但对我的帮助并不大。但是在其中一行中它说“NameError(未初始化的常量Paperclip :: Storage :: S3 :: AWS”可能是问题吗?
标签: ruby-on-rails amazon-web-services heroku amazon-s3 paperclip