Rails 3:调用控制器内部的函数

don*_*ald 10 ruby ruby-on-rails ruby-on-rails-3

如果我想在控制器内部调用函数,我应该把它们放在哪里?

dda*_*yan 14

如果你想让它在控制器本地,那么你需要做的就是将它添加到你想要使用的控制器.

private
def myfunction
  function code.....
end
Run Code Online (Sandbox Code Playgroud)

对于所有控制器,您可以将它放在应用程序控制器中,因为所有控制器都是子类.

ApplicationController的

protected

def myfunction

  function code.....

end
Run Code Online (Sandbox Code Playgroud)

如果要在视图中访问,则可以创建帮助程序

ApplicationHelper

def myfunction

  function code...

end
Run Code Online (Sandbox Code Playgroud)

  • 我相信`ApplicationController`示例应该受到保护,而不是私有. (2认同)