如何在Rails中设置控制器范围的变量?

时间:2011-12-30 18:25:20

标签: ruby-on-rails instance-variables

以下情景:

我想在每个视图中设置body标签,如下所示:

<body id="<%= @controller %>">

我如何设置一个控制器范围的变量,所以@controller变量被替换掉了?

之类的东西
class FooController < ApplicationController
  @controller = "foo"
end

不起作用......

任何建议?谢谢!

编辑:谢谢大家,我选择params[:controller]方式,效果很好!

2 个答案:

答案 0 :(得分:2)

根据您的实际需要,有很多方法可以解决这个问题。

一种方法是在运行任何方法之前使用before_filter对其进行初始化。

如果您真的只是在寻找控制器名称,还有其他选项,例如操纵controller_pathcontrollerparams[:controller]等。

答案 1 :(得分:1)

仅限每个控制器吗?试着调查before_filter