带有S3 on Rails 3的回形针/未初始化的常量AWS :: S3 :: Connection

我正在尝试使用paperclip将文件上传到s3,并在创建新对象并引用变量时出现此错误:

  • 安装了aws-s3 gem
  • s3.yml文件具有正确的凭据

即:

a = Attachment.new a.file NameError: uninitialized constant AWS::S3::Connection from /Library/Ruby/Gems/1.8/gems/aws-s3-0.6.2/lib/aws/s3/extensions.rb:206:in `const_missing' from /Library/Ruby/Gems/1.8/gems/aws-s3-0.6.2/lib/aws/s3.rb:32 from /Library/Ruby/Gems/1.8/gems/aws-s3-0.6.2/lib/aws/s3.rb:31:in `class_eval' from /Library/Ruby/Gems/1.8/gems/aws-s3-0.6.2/lib/aws/s3.rb:31 from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip/storage.rb:131:in `extended' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip/attachment.rb:269:in `extend' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip/attachment.rb:269:in `initialize_storage' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip/attachment.rb:51:in `initialize' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip.rb:372:in `new' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip.rb:372:in `attachment_for' from /Library/Ruby/Gems/1.8/gems/paperclip-2.3.3/lib/paperclip.rb:270:in `file' from (irb):6 

这是Attachment模型的样子:

 class Attachment  :s3, :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", :path => "/uploads/:attachment/:id/:style/:basename.:extension", :bucket => 'bucketname', :s3_permissions => :public_read end 

原来是与我在gemfile中留下的不同s3 gem的冲突

迈克,你是否成功地使用了Rails 3的aws-s3? 我假设是的,但你可以validation我需要自己检查一下。