我想在我的代码(在视图中)使用变量,如:
ENV['SERVER_URL1']
并希望它们在不同的环境(prod,dev,test)中有所不同
ENV['SERVER_URL']
- 它是标准变量吗?什么时候可用。我尝试设置应用程序的不同部分(application.rb,development.rb)
ENV['SERVER_URL1'] = 'http://localhost:4000/'
但似乎没有用。
答案 0 :(得分:1)
使用Rails 4.1+时,设置ENV变量的新方法是使用config/secrets.yml
文件。
添加到此文件的机密可通过Rails.application.secrets访问。例如,使用以下config / secrets.yml:
development: secret_key_base: 3b7cd727ee24e8444053437c36cc66c3 some_api_key: SOMEKEY
Rails.application.secrets.some_api_key在开发环境中返回SOMEKEY。
请参阅升级Ruby on Rails指南,了解如何迁移现有应用程序以使用此功能。
所以你应该设置:
development:
SERVER_URL1: http://localhost:4000
production:
SERVER_URL1: http://my-domain.com