我对mongodb查询有疑问。
我更新了数组,它起作用了。但是它返回完整的文档,包含所有项目的数组。我只需要返回最后一个项目就可以返回数组。
有什么想法吗?
这是我的代码。
Test
答案 0 :(得分:0)
尝试一下:
const updateMessage = (userId, messageId) => {
return OperationMessageUser.findOneAndUpdate({
userId: userId,
'messages.messageId': {
$ne: messageId
},
}, {
$addToSet: {
messages: {
messageId: messageId,
status: 1,
lastRead: Date.now()
},
},
}, {
new: true,
//projection: 'messages',
}).messages[0];
};