Ruby on rails 钥匙在那里,但我仍然得到'fetch';:找不到密钥:";S3“桶名”;(按键错误)

Ruby on rails 钥匙在那里,但我仍然得到'fetch';:找不到密钥:";S3“桶名”;(按键错误),ruby-on-rails,heroku,amazon-s3,paperclip,Ruby On Rails,Heroku,Amazon S3,Paperclip,我知道有很多这样的问题要问,但我试着跟踪每一个问题,但没有运气。一定是我忽略了一些容易犯的错误 我正试图按照本指南设置S3和回形针,并设置本地测试。每次我尝试生成db迁移时,尽管我得到了错误: config/environments/development.rb:62:在fetch中:找不到键:“S3\u BUCKET\u NAME”(键错误) 这些是我的文件,完全替换了密钥: development.rb config.paperlip_defaults = { storage: :s

我知道有很多这样的问题要问,但我试着跟踪每一个问题,但没有运气。一定是我忽略了一些容易犯的错误

我正试图按照本指南设置S3和回形针,并设置本地测试。每次我尝试生成db迁移时,尽管我得到了错误:

config/environments/development.rb:62:在fetch中:找不到键:“S3\u BUCKET\u NAME”(键错误)

这些是我的文件,完全替换了密钥:

development.rb

config.paperlip_defaults = {
    storage: :s3,
    s3_credientials: {
      bucket: ENV.fetch('S3_BUCKET_NAME'),
      access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'),
      secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'),
      s3_region: ENV.fetch('AWS_REGION')
    }
  }
环境署署长

我错过了什么


编辑:我曾尝试按照中的建议将ENV值添加到我的
~/.bashrc
~/.bash\u profle
中,但出现了相同的错误。

使用gem,答案非常简单

我将
dotenv-rails
添加到我的文件中

group :development, :test do
  gem 'dotenv-rails'
end
捆绑安装
很好


我想我从未意识到保存在根目录中的.env文件不是自动加载的。

可能是的副本。我不想像这个问题那样用secrets.yml文件设置它。我想遵循Heroku文档和二级指南的链接。此外,这里的问题负责人说,他们没有在本地设置变量,但我相信我的变量是(但如果有人看到我做错了,我希望被证明是错的)
group :development, :test do
  gem 'dotenv-rails'
end