我想在rails 3应用程序中保留一些值的历史记录,但是当前将这些值计算为没有相应数据库字段的属性。我是否可以轻松实现对这些值的持久审计而无需更改模型?即使可以做到,它有意义吗?
假设我有一个包含任务的模型列表。每个列表都有一个名为complete的布尔字段(存储在db中),表示任务是否已完成。这在模型中用于计算我的List模型中的属性pctComplete:
def self.completedItems
tasks.where(:complete => true)
end
def self.pctComplete
completedItems.count / tasks.count
end
如果我需要审核pctComplete,为了提供数据的历史视图,在开始考虑实现保存审计数据的位置之前,是否需要开始将pctComplete作为List模型的一部分进行存储?如果它有帮助,我打算在审计时使用act_as_audit这样的插件来完成繁重的任务。
如果这个问题含糊不清或多余,请提前致谢并对不起。