Setup using a simple example: I\'ve got 1 table (Totals) that holds the sum of the amount column of each record in a second table (
Totals
amount
To get all changed fields, with their old and new values respectively:
person = Person.create!(:name => 'Bill') person.name = 'Bob' person.save person.changes # => {"name" => ["Bill", "Bob"]}