method

helper_method

helper_method(*methods)
public

Declare a controller method as a helper. For example, the following makes the current_user controller method available to the view:

  class ApplicationController < ActionController::Base
    helper_method :current_user
    def current_user
      @current_user ||= User.find(session[:user])
    end
  end

1Note

Only in ApplicationController

AKovtunov ยท Sep 18, 2014

Seems like we can use helper_method only in ApplicationController. Even if we will create child controller, methods that will be created in child and listed in child's helper_method will not be accessible from the view.

For example, we have

class SystemController < ApplicationController def important_method "I am important!" end end and class BookController < SystemController def index end end And calling important_method from Book's index view will raise an NoMethodError.