在布局顶部包含一个全局变量,以便在所有控制器/视图中使用

时间:2013-07-16 10:11:34

标签: ruby-on-rails

我有一个包含此内容的包含文件- @show = :dev我需要在我的布局中包含此文件,以便我可以在任何地方使用此变量。我试过把它包括在内:

.content
  = render "includes/dev_live"

但它只有在我在每个视图中引用它而不是在布局中引用一次时才有效。我不能只输入变量,因为我的网站托管在两台服务器上,每台服务器都有不同的变量。

1 个答案:

答案 0 :(得分:1)

尝试rails_config gem,它允许您创建所有控制器/视图中可用的设置文件。例如,有一个设置文件:

:show
  'live'

然后在您的控制器/视图中,您可以通过编写

来访问它
Settings.show

(如果需要,可选择使用to_sym转换为符号) 默认情况下,rails config gem有一个本地设置文件,不受版本控制的跟踪(无论如何都是git),所以你可以在不同的实例上有不同的版本。