Paperclip Mongoid S3错误

时间:2012-07-10 20:08:27

标签: amazon-s3 mongoid paperclip

上传文件时出现此错误: LoadError(没有要加载的文件 - aws-sdk(您可能需要安装aws-sdk gem)):   app / controllers / uploaded_files_controller.rb:19:在'create'

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

我已经阅读了有关此内容的其他Stack Overflow帖子,但没有解决我的具体问题。

  1. 我已多次重启我的服务器。不是这个。
  2. 我确实需要在我的Gemfile中使用Amazon gem
  3. 在把亚马逊宝石放进去之后我做了一个捆绑安装(我知道它显而易见,但我仍然要说明这一点)

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

  5. 我知道我的亚马逊存储桶名称和身份验证信息是正确的,因为我使用此应用程序以不同的容量连接到其他亚马逊资源。
  6. 任何人都可以帮忙吗?这是我的代码:

    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
    

1 个答案:

答案 0 :(得分:0)

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

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

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

应该是

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