2012-07-10 125 views
0

得到这个错误在上传FILE: LoadError(没有这样的文件,以负荷 - AWS-SDK(您可能需要安装AWS-SDK宝石)): 应用程序/控制器/ uploaded_files_controller。 rb:19:在`create'中回形针Mongoid S3错误

我正在使用Mongo和Paperclip。我可以在不使用s3的情况下上传文件。但是,我们的生产服务器在Heroku上,所以我必须使用Amazon来存储文件。

我读过其他堆栈溢出的帖子,但没有解决我的具体问题。

  1. 我重新启动了我的服务器几次。不是这个。
  2. 我确实需要亚马逊宝石在我的Gemfile
  3. 我已经做了捆绑安装放亚马逊宝石后(我知道它的明显的,但我仍然不得不说明这点)

  4. 我不使用ImageMagick。这些上传是简单的文本文件上传。

  5. 我知道我的Amazon存储桶名称和身份验证资料是正确的,因为我使用此应用程序连接到不同容量的其他Amazon资源。

任何人都可以帮忙吗?这里是我的代码:

class UploadedFile 
    include Mongoid::Document 
    include Mongoid::Paperclip 

    require "aws/s3" 

    has_mongoid_attached_file :file, 
    :storage  => :s3, 
    :bucket_name => 'my-uploads', 
    :path   => ':attachment/:id/:style.:extension', 
    :s3_credentials => File.join(Rails.root, 'config', 'amazon_s3.yml') 

end 

回答

0

好的,我找到了答案:宝石需要更新。

Paperclip现在需要Amazon SDK gem而不是s3 gem。

gem 'aws-s3', :require => "aws/s3" 

应改为

gem 'aws-sdk', :require => "aws-sdk" 
+1

什么左右各一的区别?两者都是一样的,不是?我现在有点混乱。 – 2012-07-31 18:45:26

+0

我真诚道歉.....我忘了把新的游戏名称,并最初把s3宝石的名字再次。编辑(更正)指出正确的新创业板是..... gem'aws-sdk',:require =>“aws-sdk” – Shem 2012-10-11 20:18:53