我正在使用 Carrerwave 0.5.3,在调用图片 Controller 的 Create 方法中的 Picture.save 时收到 404 错误。根据 lib/carrierwave/storage/s3.rb 中的说明,我的初始化文件 (config/initializers/carrierwave_fog.rb) 中包含以下内容:
CarrierWave.configure do |config|
config.s3_access_key_id = "xxxxx"
config.s3_secret_access_key = "xxxxx"
config.s3_bucket = "mybucket" #already created in my S3 account
end
在 photo_uploader.rb 我有:
class PhotoUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
storage :s3
def store_dir
"uploads" # already created in my s3 account
end
def cache_dir
"uploads/cache" #already created in my s3 account
end
end
确切的错误:
Excon::Errors::NotFound in PicturesController#create
Expected(200) <=> Actual(404 Not Found)
request => {:expects=>200}
response => #<Excon::Response:0x00000104a72448 @body="", @headers={}, @status=404>
我在这里发现了一个稍微类似的问题 Carrierwave and s3 with heroku error undefined method `fog_credentials=' .但是按照我现在的方式进行设置显然在那种情况下有效。不幸的是它不适合我。
我已经在我的存储桶中放了一张图片并将权限设置为公开,并且可以通过浏览器访问该图片。所以 AWS S3 端的东西似乎在工作。
不确定下一步要去哪里。有什么想法吗?
最佳答案
嗯,我睡了一个晚上,第二天回来,一切都很好。不知道为什么它突然开始工作。
关于ruby-on-rails-3 - Rails 3 Carrierwave-Fog-S3 错误 : Expected(200) <=> Actual(404 Not Found),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6068041/