繁体   English   中英

Rails gem不使用环境变量

[英]Rails gem not using environment variable

我创建了一个Rails gem和一个使用该gem的Rails应用。 该宝石已部署在Gemfury,并且我能够成功bundle install该宝石。 在gem中,我将一个变量设置为环境变量。 当我在本地运行我的应用程序时,使用环境变量的应用程序中的位置可以读取我的环境变量(由Figaro管理),但是gem无法读取。 我可能缺少什么或做错了什么?

例如,如果我在gem中执行此操作:

 cache_enabled = ENV['CACHE_ENABLED'] || false

即使我的环境变量CACHE_ENABLED = true,它也将最终变为false。 我的Rails应用程序可以毫无问题地读取环境变量。

我正在使用Rails 4,如果有所作为。

如果您使用的是Rails 4.1或更高版本,则可能是Spring

您应该能够$ spring stop ,然后正确运行您的应用程序(因为spring将使用新的env vars重新启动)。

您可以为此永久删除弹簧。


附带说明一下,我倾向于在本地使用Foreman (包括鲜为人知的foreman run )命令,如果这样做,则可以在.env前面加上DISABLE_SPRING=1 ,并且每当使用Foreman时都会绕过Spring。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM