Ruby dotenv gem未加载.env文件

Ruby dotenv gem未加载.env文件,ruby,Ruby,我的项目中安装了dotenv和dotenv-railsgem。运行rails控制台时,我可以键入: 2.4.0 :001 > ENV["DATABASE_NAME"] => "portfolio_site_development" 但是,当我调用Ruby文件或irb终端时,Ruby会出现问题: 2.4.0 :001 > ENV["DATABASE_NAME"] => nil 我需要Ruby文件中的dotenv。我做错了什么?好吧,我知道了。虽然这曾经奏效,但我想

我的项目中安装了
dotenv
dotenv-rails
gem。运行rails控制台时,我可以键入:

2.4.0 :001 > ENV["DATABASE_NAME"]
 => "portfolio_site_development"
但是,当我调用Ruby文件或irb终端时,Ruby会出现问题:

2.4.0 :001 > ENV["DATABASE_NAME"]
 => nil 

我需要Ruby文件中的
dotenv
。我做错了什么?

好吧,我知道了。虽然这曾经奏效,但我想最近更新的
dotenv
已经改变了一切


因为我的ruby脚本位于
/lib/scripts/script.rb
中,所以我需要调用
Dotenv.load(“../.env”)
,以便它指向项目结构根目录中的
.env
文件。

您是否像自述示例中那样调用了
Dotenv.load
?Rails gem可能会为您这样做,但如果您使用的是纯Ruby,则必须实际加载它@MichaelBerkowski感谢您的快速回复,我确实打电话给了Dotenv.load不幸的是:(我把它放在最上面:你的
.env
文件名是什么?在Rails中,你可能正在使用环境特定的文件,比如
.env.development
,但是默认情况下
Dotenv.load
将读取一个名为
.env
的文件,在IRB中,一个简单的
需要'Dotenv';Dotenv.load
会导致变量的散列。)在
/.env
@MichaelBerkowski中定义的
.env
文件称为
.env
,直接位于根
/.env
中。这是ruby中应该位于的位置吗?下面是当前的文件结构:最近的更改允许您执行
要求“dotenv/load”