我正在尝试在 MongoDB 中实现版本控制(基于存储文档之间的差异),如本文所述:在 MongoDB 中实现数据版本控制的方法。
到目前为止,我使用的是相同的方法,但想进行如下查询:“给我 Date1 和 Date2 之间的所有更改”。帖子中显示的架构仅使用简单的增量编号作为不允许此类查询的更改的键:
{
_id : "id of address book record",
changes : {
1234567 : { "city" : "Omaha", "state" : "Nebraska" },
1234568 : { "city" : "Kansas City", "state" : "Missouri" }
}
}
我唯一的猜测是,要进行基于时间的查询,我必须在键值中包含一些时间信息。也许像这样的 ObjectId 或 ISODate:
{
_id : "id of address book record",
changes : {
ISODate(Date) : { "city" : "Omaha", "state" : "Nebraska" },
ObjectId(id) : { "city" : "Kansas City", "state" : "Missouri" }
}
}
我用谷歌搜索了很长时间的解决方案,但找不到任何真正有用的东西。如果有人知道如何做到这一点,如果你能帮助我,那就太好了。甚至可能这是解决问题的完全错误的方法,并且有更好的方法来解决这个问题......我愿意接受任何建议!
谢谢你的协助...