2012-11-28 26 views
1

請問我可以如何獲取已更改對象的數據?如何在保存前獲取對象的值

例如,我有一個對象@student = {:name => 'xxx', :class => 'yyy'},用戶在該網站上播放此對象。保存對象後,我會通知用戶有關更改的內容,例如,Student #{@student.name} has changed #{@student.class}

那麼基本上如何從保存之前的模型中獲取以前的數據?

注意:before_save回調不做這項工作。

回答

1

查看paper_trail gem,它允許對模型進行版本控制和跟蹤更改。

1

在完成保存之前,您可以使用ActiveRecord的changed方法並將結果保留在閃存中。

flash[:changed_attrs] = @student.changed.join(', ') 
相關問題