【问题标题】:Why are my gem 'dotenv-rails' variables not loading?为什么我的 gem 'dotenv-rails' 变量没有加载?
【发布时间】:2018-01-05 12:20:05
【问题描述】:
  • gem 'dotenv-rails' 在 gemfile 测试和开发环境中是必需的。
  • .env 文件保存在根目录
  • 我相信变量使用正确的语法; USERNAME=用户名
  • 我使用的是 Rails 5.0.4
  • 我在任何地方都不需要 'dotenv-rails',因为 docs 不建议我需要。

在控制台中播放时,我可以访问变量的唯一方法是在每个会话中调用 Dotenv.load。建议Dotenv.load 应该在我的应用配置中的某处调用。

【问题讨论】:

  • 尝试在您的config/application.rb 上拨打Dotenv::Railtie.load
  • 感谢@akz92 所做的,从文档中似乎并不清楚需要该代码块,除非您想要“比正常更快”初始化!是否还需要在config/application.rb 中声明HOSTNAME = ENV['HOSTNAME']?请提交作为答案,我会接受。再次感谢。
  • 不,HOSTNAME 只是示例的一部分。不幸的是,我不知道为什么会发生这种情况,这就是我在项目中解决这个问题的方法。
  • 啊哈,当然,我是!。

标签: ruby-on-rails environment-variables


【解决方案1】:

如果这对其他人有帮助:

这发生在我身上一次。事实证明,我错误地在环境变量中传递了RAILS_ENV=production,将其禁用。

【讨论】:

    【解决方案2】:

    Dotenv::Railtie.load 添加到您的config/application.rb

    【讨论】:

    • 当我添加 Dotenv::Railtie.load 时,它给了我这个错误 "/home/ubuntu/workspace/config/application.rb:8:in `': uninitialized常量 Dotenv::Railtie (NameError) 你的意思是?Rails"
    • @KickButtowski 不,这是正确的名称。也许宝石根本没有被加载。查看文档:github.com/bkeepers/dotenv#note-on-load-order
    • 上帝保佑您对未加载该 gem 的评论对我有很大帮助
    猜你喜欢
    • 1970-01-01
    • 2020-01-22
    • 1970-01-01
    • 2012-04-21
    • 2014-09-02
    • 1970-01-01
    • 2014-12-06
    • 1970-01-01
    • 2015-12-24
    相关资源
    最近更新 更多