将dotenv传递给ActiveRecord rake任务(没有Rails)

时间:2017-11-14 17:06:33

标签: ruby activerecord task

我在no-Rails应用中使用ActiveRecords,并尝试将dotenv用于ActiveRecord rake任务。

在dotenv的文档中,有人说你需要将它传递给这样的任务:

require 'dotenv/tasks'

task mytask: :dotenv do
   # things that require .env
end

但是我在我的Rakefile中加载了我的ActiveRecord rake任务:

load 'active_record/railties/databases.rake'

如何将dotenv传递给ActiveRecord任务?

由于

2 个答案:

答案 0 :(得分:1)

我猜你还应该在你的Rakefile中要求dotenv

require 'dotenv/tasks'
load 'active_record/railties/databases.rake'

因此,在加载自定义任务时,将加载dotenv并使用数据填充ENV。

答案 1 :(得分:0)

DotEnv设置一起,请确保您运行:

rake db:environment:set

在运行任何需要ENV的命令之前设置环境变量。