如何在Rails控制台中加载环境变量?

34

我觉得这是个简单的问题!

我正在使用 .env 文件来存储所有环境变量,并且我在使用 foreman

不幸的是,在运行rails控制台 rails c 时,这些环境变量没有被加载,所以我现在需要在运行控制台后手动加载它们,这不是最好的方式。

我想知道是否有更好的方法。

3个回答

68

2

Rails并不知道在.env文件中指定的环境变量,因为这是特定于Foreman的。在调用Rails控制台之前,您需要明确设置环境。请参考此问题


1
我个人在开发和测试环境中使用dotenv。采用这种方法,您不必为命令添加前缀,只需在config/application.rb中调用初始化器即可:
Bundler.require(*Rails.groups)

Dotenv::Railtie.load

HOSTNAME = ENV['HOSTNAME']

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接