0

编辑(15/04/2016):根据在这个问题中收到的评论,我认为 mongodb 中没有直接的方法可以这样做。在那种情况下,是否可以使用 MongooseJS 做到这一点?


我正在使用 mongodb,对于一个集合,我需要一个“lastModified”字段,它应该显示最后一次实际修改文档的任何值的时间。这意味着,如果我进行了更新查询并且所有其他值都相同,则不应更新“lastModified”。

示例: 假设我在集合中有一个文档:

{ _id: 1, status: "a", lastModified: ISODate("2016-04-02T01:11:18.965Z") }

当我更新时

{$set:{"status":"a", "lastModified":"Current Time Here"}}

那么“lastModified”不应该改变

当我更新时

{$set:{"status":"b", "lastModified":"Current Time Here"}}

那么“lastModified”应该改变

如何做到这一点?

在我的情况下,我将多次调用更新操作,并且我不想在这种情况下每次都更改“lastModified”。相反,它应该仅在实际修改“状态”时才更改。

4

0 回答 0