随着时间的推移跟踪属性

时间:2012-12-03 23:00:38

标签: ruby-on-rails mongoid

我有一个文档集合,每个文档都有一个“值”,我希望能够随时跟踪值,我的第一个想法是在before_save中创建文档的快照,然后执行group_by {| t | t.created_at.hour}在这些快照上创建一个折线图。 这应该有用,还有其他想法吗?

1 个答案:

答案 0 :(得分:1)

mongoid gem有一个名为Mongoid::Versioning的模块。只需将其包含在您的模型中,如下所示:

class Person
  include Mongoid::Document
  include Mongoid::Versioning
end

这样,您就可以通过@instance.versions访问所有以前的版本。

http://mongoid.org/en/mongoid/docs/extras.html#versioning