mirror of
https://github.com/jbranchaud/til
synced 2026-01-05 08:08:02 +00:00
740 B
740 B
Attribute Was
When modifying the attributes of an ActiveRecord object, you may want to
know what values the modified attributes used to have. ActiveRecord gets
some handy methods from the ActiveModel::Dirty module that allow you to
check these values out even if the object's attributes were changed before
you received it (though you are out of luck once it has been saved).
Just add _was onto the end of the attribute in question.
>> pokemon.name
=> "Charizard"
>> pokemon.name = "Squirtle"
=> "Squirtle"
>> pokemon.name
=> "Squirtle"
>> pokemon.name_was
=> "Charizard"
>> pokemon.save
...
=> true
>> pokemon.name_was == pokemon.name
=> true