added docs to alias_attribute method

This commit is contained in:
Francesco Rodriguez 2012-05-07 22:47:35 -05:00
parent 2805c28e3e
commit 4831a895c4

@ -180,6 +180,37 @@ def attribute_method_affix(*affixes)
undefine_attribute_methods
end
# Allows you to make aliases for attributes.
#
# For example:
#
# class Person
#
# include ActiveModel::AttributeMethods
# attr_accessor :name
# attribute_method_prefix 'clear_'
#
# define_attribute_methods [:name]
#
# private
#
# def clear_attribute(attr)
# send("#{attr}=", nil)
# end
# end
#
# class Person
# attr_accessor :nickname
#
# alias_attribute :nickname, :name
# end
#
# person = Person.new
# person.nickname = "Bob"
# person.nickname # => "Bob"
# person.clear_nickname
# person.nickname # => nil
def alias_attribute(new_name, old_name)
attribute_method_matchers.each do |matcher|
matcher_new = matcher.method_name(new_name).to_s