如何在application_controller.rb中使函数在视图中可见?

时间:2011-02-27 03:21:44

标签: ruby-on-rails

在我的application-controller.rb中,我做了:

def show_footer?
   @show_footer = true
end

然后在我看来,我收到一个错误说show_footer?没有定义。

请注意,此视图位于另一个控制器中,然后继承application_controller。

2 个答案:

答案 0 :(得分:5)

控制器方法不在视图范围内;只有辅助方法。您还可以通过执行以下操作将控制器方法添加为帮助程序:

class ApplicationController < ActionController::Base
  helper_method :show_footer?

  def show_footer?
    # Your method implementation.
  end
end

现在,您可以在两个您的控制器和您的观点中引用show_footer?

答案 1 :(得分:2)

请改为application_helper.rb

此外,您可能需要@show_footer == true代替=