我有运行rails应用程序。我无法重启服务器。
我有一个需要更改的环境变量。我试图通过rails console
ENV['SCORE'] = "123"
它更新当前rails c
会话的变量:
ENV['SCORE']
=> "123"
但对应用程序正在使用的变量没有影响。
有没有办法在运行时永久更改环境变量?
答案 0 :(得分:4)
如果要在进程之间共享数据,通常使用某种存储。在这种情况下,像Redis(http://redis.io/)这样的内存中键/值存储似乎是您用例的最佳选择。
安装并运行Redis,然后将gem放入Gemfile中。
gem "redis"
在您的代码中连接数据库
require "redis"
client = Redis.new
client.set("score", 123)
client.get("score")
# => "123"
client.incr("score")
# => "124"
答案 1 :(得分:-1)
如果使用该代码创建初始值设定项
ENV['SCORE'] = "123"
该值将持续存在。