我有一个变量:site_name对于不同的站点会有所不同,但我不知道在哪里放置它,以便所有型号/视图/控制器都可以访问?此变量应仅在服务器启动时设置一次,然后在整个站点中使用?
site_name ||= ENV['SITE'] == 'SiteA' ? "Awesome Site" : "Cool Site"
我会把它放在哪里?在一个变量?在一个方法?什么位置?
答案 0 :(得分: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