Make Rails Lib Module Methods Available to Views

If you create a module in the lib/ directory of your Rails application you won’t have access to those methods in your views. If you don’t want to put those methods in a helper file, you need to add a method to your module that makes them available for you views like so…

#in lib/my_module_name.rb
module MyModuleName
  def my_method_for_views
     #logic...
  end
  def self.included(base)
    base.send :helper_method, :my_method_for_views if base.respond_to? :helper_method
  end
end
  • admin

    You need to include your module in your application_controller.rb file as well.

    class ApplicationController < ActionController::Base
      #...
      include MyModuleName
    end