1

我正在 Rails 6 中创建一个新应用程序,在我们的其他 Rails 应用程序(4.x 和 5.2 中的任何地方)中保密的工作流程是创建一个.env文件并通过 gem 导入它们dotenv,然后从哈希中config/secrets提取ENV.

但是,当我在 R6 应用程序中运行控制台会话并尝试访问ENV时,我看到一个版本,其中我刚刚添加的变量没有出现,而我上周添加的其他变量那里。奇怪的是,如果我运行rails c -e test,ENV确实包含新变量,即使.env.test不包含它们。(同时,ENV通过 RSpec 运行时具有所有变量。)

有人对这种行为有想法吗?我们应该考虑credentials改用吗?

编辑:这很尴尬:我重新启动了我的 Macbook,现在 ENV 变量已更新。

4

1 回答 1

0

我也遇到了同样的情况,烦死了。这可能与特定的dotenv加载问题有关吗?或者可能与底层操作系统有关(MacOS 10.15.7在我的情况下)?

相关问题:https ://github.com/bkeepers/dotenv/issues/308

更新:按照这里bin/spring stop的建议尝试但没有成功

于 2020-11-17T23:04:01.253 回答