如何处理mongodb集合中的'lastModified'字段?(以这样的方式更新字段,只有在文档中的任何值发生更改时才更新)
- 论坛
- 如何处理mongodb集合中的'lastModified'字段?(以这样的方式更新字段,只有在文档中的任何值发生更改时才更新)
10 浏览
如何处理mongodb集合中的'lastModified'字段?(以这样的方式更新字段,只有在文档中的任何值发生更改时才更新)
根据我在这个问题中收到的评论,我认为在mongodb中没有直接的方法来做到这一点。在这种情况下,是否可以用MongooseJS来实现呢?
我正在使用mongodb,对于一个集合,我需要一个'lastModified'字段,它应该显示文档中任何值的最后修改时间。这意味着,如果我执行了一个更新查询,而所有其他值都相同,那么'lastModified'不应该被更新。
例子:
假设我有一个集合中的文档如下:
{ _id: 1, status: "a", lastModified: ISODate("2016-04-02T01:11:18.965Z") }
当我用以下方式进行更新:
{$set:{"status":"a", "lastModified":"当前时间"}}
那么"lastModified" 不应该改变
当我用以下方式进行更新:
{$set:{"status":"b", "lastModified":"当前时间"}}
那么"lastModified" 应该改变
如何实现这个需求?
在我的情况下,我会多次调用更新操作,我不希望在这种情况下“lastModified”每次都改变。相反,只有当“status”实际修改时,它才应该改变。