Rails 3 アプリケーションでいくつかの値の履歴を保持したいのですが、現在、これらの値を対応するデータベース フィールドのない属性として計算しています。モデルを変更せずに、これらの値の永続的な監査を簡単に実装できますか? 出来たとしても意味あるの?
タスクを含むモデル リストがあるとします。各リストには、タスクが完了したかどうかを示す完了と呼ばれるブール フィールド (データベースに保存されます) があります。これは、リスト モデルで属性 pctComplete を計算するためにモデルで使用されます。
def self.completedItems
tasks.where(:complete => true)
end
def self.pctComplete
completedItems.count / tasks.count
end
データの履歴ビューを提供するために pctComplete を監査する必要がある場合、監査データを保持する場所を実装することを考える前に、List モデルの一部として pctComplete の保存を開始する必要がありますか? もしそれが助けになるなら、私は act_as_audit のようなプラグインを使って、監査に関して重い仕事をすることを計画しています.
この質問があいまいまたは冗長である場合は、事前に感謝し、申し訳ありません.