【发布时间】:2019-11-06 19:41:13
【问题描述】:
我使用dotenv gem 将开发环境变量存储在机密文件中。在我的计算机上升级 ruby 和 rails 后,gem 不再提取变量。为了尝试找出原因,经过一段时间的尝试不同的选择,我最终创建了两个相同的应用程序,只有两个不同。 ruby 和 rails 版本。一个应用程序能够提取环境变量,另一个应用程序返回 nil。有什么建议么?
我的设置
工作应用程序有
ruby "2.5.0"
gem 'rails', '~> 5.1.6'
非工作应用有
ruby "2.6.5"
gem 'rails', '~> 6.0.0'
到目前为止我已经尝试过什么
- 我阅读了 gem 网站上的信息并尝试将
Dotenv::Railtie.load添加到我的config/application.rb文件中。 - 另外,我尝试在我的 Gemfile 中添加
require: 'dotenv/rails-now',以防这是因为另一个 gem 问题。 - 我将
require 'dotenv/load'添加到需要变量的文件中。 - 我将
'require dotenv/load'添加到我的config/application.rb文件中的各个位置
我单独进行的每个更改并使用byebug 在终端中检查变量是否已加载。并且每次变量仍然是nil。
我缺少什么?有什么建议么?或者我应该切换到另一个宝石?我听说figaro 可能会做同样的事情,只是以前从未使用过。预先感谢您的帮助。
【问题讨论】:
标签: environment-variables ruby-on-rails-6 ruby-dotenv