2013-08-23 100 views
0

我想在單獨的yml文件中設置rails環境變量。它看起來像這樣:用Rails管理.yml文件中的Rails環境變量管理

test: 
    sap_url: "http://example.com/" 

development: 
    show_evp: 'true' 
    show_social_media: "true" 

production: 
    show_evp: 'true' 
    show_social_media: "true" 

staging: 
    show_evp: 'true' 
    show_social_media: "true" 

而在我的軌道聯繫我下面

config.model Settings do 
    weight 1 
    list do 
     field :id 
     field :show_hot_jobs 
     if ENV['SHOW_EVP'] == 'true' 
     field :show_evp 
     end 
     field :show_students 
     field :show_testimonials 
     field :show_on_boarding 
    end 

但變量始終是假的,人有我需要設置這些軌道ENV變量的想法或者我的錯在哪裏。

KR, 文森特

回答

1

感謝您的幫助。我在config文件夾中創建了一個.yml文件,添加了我需要的所有dev/staging/prod設置。

下的lib文件夾中創建一個模塊,並做了以下內容:

def self.config 
    OpenStruct.new \ 
    :url => yaml["url"] 
    end 

,現在我可以通過 「模塊名」 用它.config.url

KR, 文斯

1

使用費加羅寶石處理ENV變量和私有數據。簡單而簡單。你不會後悔。