method

helper_method

Importance_2
Ruby on Rails latest stable (v7.1.3.2) - 1 note - Class: ActionController::Helpers::ClassMethods

Method deprecated or moved

This method is deprecated or moved on the latest stable version. The last existing version (v2.3.8) is shown here.

These similar methods exist in v7.1.3.2:

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, :logged_in? def current_user @current_user ||= User.find_by_id(session[:user]) end def logged_in? current_user != nil end end 

In a view:

 <% if logged_in? -%>Welcome, <%= current_user.name %><% end -%> 
Show source
Register or log in to add new notes.
September 18, 2014 - (<= v4.0.2)
0 thanks

Only in ApplicationController

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.