在不实际更改文档的情况下更新猫鼬时间戳

时间:2020-05-12 22:15:21

标签: mongodb mongoose mongoose-schema

我正在用Mongoose构建一个聊天应用程序,并且我有两个模型:

对话:{ 参与者[user1,user2], UpdatedAt, createdAt }

AND

消息:{ sessionId :, 内容:'' ... }

我正在使用分页从“会话”中检索包含最新发送的消息的20个文档

let conversations = await Conversation.paginate(
          {participants: userID},
          {
           //select: '_id participants updatedAt createdAt',
            populate: {
              path: 'participants',
              select: 'name lastName _id photoURL'
            },
            page: page,
            limit: 20,
            sort: {updatedAt: -1}
          }
        );

发送新消息时,将创建一个新的消息文档。但是,这不会更新会话的“ updatedAt”值。

为使上述代码正常工作,我需要在每次发送新消息时更新“对话”文档中的updatedAt值。

我的问题:

是否每次创建消息文档时都会更新会话文档中的updatedAt值的高性能方法?

0 个答案:

没有答案