对于我的ruby-on-rails应用程序上的图像上传,我使用了ruby gem paperclip,它在本地工作得很好 . 说到heroku上的虚拟主机,我想用亚马逊s3来存储图片 . 但每次我上传图片时,都会收到消息
我们很抱歉,但出了点问题 . 如果您是应用程序所有者,请检查日志以获取更多信息 .
在网上有人说我必须使用比v2.0更早的'aws-sdk',但不幸的是我的控制台说
未初始化的constat 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'
有人知道我能做些什么让它起作用?
1 回答
问题解决了 . 如果你并行运行以下gems,它可以运行它 .
而已 .