2012-10-18 41 views
0

我有一個變量:site_name對於不同的網站會有所不同,但我不確定將它放在哪裏,以便所有模型/視圖/控制器都可訪問?這個變量只能在服務器啓動時設置一次,然後在整個站點使用。我會在哪裏放置一個將在我的模型/視圖/控制器中使用的方法/變量?

site_name ||= ENV['SITE'] == 'SiteA' ? "Awesome Site" : "Cool Site" 

我會把這個放在哪裏?在一個變量?在一個方法?什麼位置?

回答

3

一般你會把它放在config/environment.rb。或者如果您需要根據您的環境(生產,開發,測試)定製變量,則可以將其放入config/environments/*.rb的相應文件中。這些文件只能在啓動時讀取,因此如果更改該值,則需要重新啓動您的Rails應用程序才能使其生效。

另外請注意,您按如下格式應該是:

Myapp::Application.config.site_name = ENV['SITE'] == 'SiteA' ? 'Awesome Site' : 'Cool Site' 

,然後訪問它在你的應用程序爲:

Myapp::Application.config.site_name 
相關問題