Carrierwave / Fog – 参数错误,提供程序无法识别
我正在使用Carrierwave 0.5.3和Fog将图像上传到Amazon-S3。
在本地运行时,设置顺利运行,没有错误。
但是当在Heroku上运行时,上传失败并显示以下消息:
2011-03-31T12:53:46-07:00 app[web.1]: ArgumentError ( is not a recognized storage provider): 2011-03-31T12:53:46-07:00 app[web.1]: app/controllers/useditems_controller.rb:36:in `create'
我有一个初始化器:
# /config/initializers/fog.rb CarrierWave.configure do |config| config.fog_credentials = { :provider => 'AWS', :aws_access_key_id => 'secret', :aws_secret_access_key => 'also secret', :region => 'eu-west-1' } config.fog_directory = 'jabberwocky' end
还有一个上传者:
# /app/uploaders/image_uploader.rb # encoding: utf-8 class ImageUploader [220, 2000] end # Add a white list of extensions which are allowed to be uploaded. # For images you might use something like this: def extension_white_list %w(jpg jpeg gif png) end end
我已经将错误消息跟踪到Fog,似乎在Heroku下的Fog没有从初始化程序获取配置信息。 :provider
在某种程度上是空的。 但我对如何修复它感到难过。
任何帮助将非常感激。
我正在使用:
rails 3.0.4 heroku 1.19.1 fog 0.7.1 ruby 1.9.2 under rvm
该错误是由于我错误地将初始化程序添加到.gitignore文件中。 因此,它从未上传到Heroku。
添加这个是为了完整性……
用这个错误信息将我的头撞到墙上几个小时之后,我发现我在carrierwave初始化器的开头有这条线:
if Rails.env.test? ...
因此初始化程序仅在测试环境中考虑。 删除后,一切都按预期工作。
- 在开发Web应用程序时,您何时使用Graph数据库而不是Document数据库?
- 回形针:一个模型中有多个“has_attached_file”
- Rails:通过Ajax传递Params
- 通过twitter-bootstrap-rails gem升级到bootstrap 2.0.1后,Heroku部署失败
- 如何使用Devise向Rails中的新注册用户发送欢迎电子邮件?
- 通过Dropbox Ruby API共享文件夹
- Rails]在heroku上新提交后删除了图像
- Rails + Dalli memcache gem:DalliError:没有可用的服务器
- Rails heroku帮助kaminari查看错误