1

変更されたオブジェクトのデータを取得するにはどうすればよいですか。

たとえば、私はオブジェクトを持っていて@student = {:name => 'xxx', :class => 'yyy'}、ユーザーはサイトでこのオブジェクトを操作します。オブジェクトが保存された後、たとえば、何が変更されたかをユーザーに通知しますStudent #{@student.name} has changed #{@student.class}

では、基本的に、保存前に存在していたモデルから以前のデータを取得するにはどうすればよいでしょうか。

注: before_saveコールバックはその仕事をしません。

4

2 に答える 2

1

ActiveRecordのchanged方法を使用して、保存を完了する前に結果をフラッシュに保持することができます。

flash[:changed_attrs] = @student.changed.join(', ')
于 2012-11-28T23:41:18.090 に答える
1

paper_trailモデルのバージョン管理と変更の追跡を可能にするgemを確認してください。

于 2012-11-28T23:44:05.450 に答える