From db274a02edf0b7057342de308b42ecf7f9ca4181 Mon Sep 17 00:00:00 2001 From: Mikel Lindsaar Date: Sat, 16 Jan 2010 22:21:07 +1100 Subject: Fixed readme for ActiveModel::Dirty --- activemodel/README | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'activemodel/README') diff --git a/activemodel/README b/activemodel/README index 46f02aa651..0c558ed85a 100644 --- a/activemodel/README +++ b/activemodel/README @@ -41,20 +41,38 @@ You can include functionality from the following modules: * Tracking changes in your object - class MyClass + class Person include ActiveModel::Dirty + + define_attribute_methods [:name] + + def name + @name + end + + def name=(val) + name_will_change! + @name = val + end + + def save + @previously_changed = changes + true + end end ...provides all the value tracking features implemented by ActiveRecord - person.name # => 'bill' + person = Person.new + person.name # => nil person.changed? # => false person.name = 'bob' person.changed? # => true person.changed # => ['name'] - person.changes # => { 'name' => ['bill', 'bob'] } + person.changes # => { 'name' => [nil, 'bob'] } person.name = 'robert' person.save person.previous_changes # => {'name' => ['bob, 'robert']} - \ No newline at end of file + + {Learn more}[link:classes/ActiveModel/Dirty.html] -- cgit v1.2.3