モデルの変更状態を知りたいときってありませんか? 2年前くらいに差分を求める汚いコードを書いた記憶があったのですが、まさかActiveRecordに実装されていたとは…ねぇ。
# Map of changed attrs => [original value, new value]. person.changes # => {} person.name = 'bob' person.changes # => { 'name' => ['bill', 'bob'] }
他にもこれ系のメソッドがあるので各自調べてみてください。