这意味着AWS尚未初始化.我正在使用aws sdk核心Ruby .

我try 使用aws sdk gem,但问题仍然存在.

这是初始化者/aws.rb文件:

AWS.config(:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
                      :secret_access_key => ENV['AWS_SECRET_ACCESS_KEY'])

s3 = AWS::S3.new
AVATAR_BUCKET = s3.buckets[ENV['AVATAR_BUCKET_NAME']]

当我try 运行服务器或打开控制台时,会出现以下错误:

/初始化者/aws.rb:1:in`:未初始化的常数AWS(NameError)

推荐答案

您可能会遇到此错误,因为在重新绑定安装了版本1或2的旧应用时,可能会发生此错误.

确保要安装的版本:

aws sdk版本3

gem 'aws-sdk', '~> 3'

# call sdk    
Aws.<whatever>

aws sdk版本2

gem 'aws-sdk', '~> 2'

# call sdk    
Aws.<whatever>

aws sdk版本1

# version constraint
gem 'aws-sdk', '< 2'

# or 

# use the v1 gem
gem 'aws-sdk-v1'

# call sdk    
AWS.<whatever>

v1 is scoped under AWS and v2 and v3 scoped under Aws => That allows you to run v1 and v2 side by side.

Ruby-on-rails相关问答推荐

在has_many关系中由两个条件 Select

在Ruby on Rails中获取堆栈级别太深错误(&Q)

轨道强参数,怎么允许空参数?

带有块捕获的 FormBuilder 辅助方法在 ERB 中不起作用

Rails 7 - has_many_attached 在加载新附件时删除旧附件

从 rails 5 迁移到 rails 6

Ruby on Rails 有没有好的管理生成器?

rails s和bundle exec rails s有什么区别?

上传图片 Ruby on Rails

OpenSSL::SSL::SSLError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A

单击表格行(使用 bootstrap 程序)时,如何使用模式显示数据?

使用回形针使用 Activeadmin Rails 上传文件

Rails 中是否有 HTML 安全截断方法?

Rails:进行不可逆转的迁移是不是很糟糕?

在rails中带有内部文本或html的link_to image_tag

如何将 ActionMailer default_url_options 的 :host 动态设置为请求的主机名?

Ruby on Rails Bootstrap Glyphicons 不工作

如何测试也定义为辅助方法的 ApplicationController 方法?

如何创建一个 ruby​​ Hello 世界?

部署后如何重启 puma?