在配置初始化程序中加载本地环境变量

问题描述:

我在我的config/initaializers文件夹中设置了Segment.com的analytics_ruby.rb文件,似乎无法获取我在.env中加载的环境变量。我的假设是“heroku open”会自动加载这些值 - 而不是这种情况。在配置初始化程序中加载本地环境变量

Analytics = Segment::Analytics.new({ 
    write_key: ENV['SEGMENT_KEY'], 
    on_error: Proc.new { |status, msg| print msg } 
}) 

结果我得到这个错误:

/gems/analytics-ruby-2.0.13/lib/segment/analytics/client.rb:319:in `check_write_key!': Write key must be initialized (ArgumentError)

的解决方案,dotenv护栏宝石添加到您的:开发:试验组:

# Load Local Environmental Variables .ENV 
    gem 'dotenv-rails', :groups => [:development, :test] 

https://github.com/bkeepers/dotenv