我想使用acts_as_audited
的设计。我在谷歌上搜索过,但结果不是很清楚。它的优点和缺点是什么?
我在这里使用的是Paper Trail,它是更新的,但基本相同,我的设计用户模型的顶部看起来像这样:
class User < ActiveRecord::Base
has_paper_trail
现在我有一个不断增长的versions
表在我的DB与行每个CRUD操作的用户模型。
好处是所有以前版本的模型数据都保存并存储在YAML中,允许您回滚/撤消。
缺点吗?在写/更新时,只有数据库大小和可能的小性能影响。