Access a view helper for a model in rails

ruby-on-rails

Solution

Just explicitly include the helper in your model

# app/helpers/adults_helper.rb
module AdultsHelper
  def say_hello
    "hello, world!"
  end
end

# app/models/adult.rb
class Adult < ActiveRecord::Base
  include AdultsHelper

end

Test in console

$ script/console
>> a = Adult.new
# => #<Adult id:...>
>> a.say_hello
# => "hello, world!"

Problem

I have an Adult model with a name attribute. If the user is logged in, I want the Adult.name to only return the first name. Is there a way to have helpers tied to a model where you could specify Adult.helper.name? Or a least have helpers namespaced to a model?

Original source