gpt4 book ai didi

javascript - 通过 mongoose 更新 mongodb 中嵌套数组中的特定值

转载 作者:行者123 更新时间:2023-11-30 18:05:52 26 4
gpt4 key购买 nike

我有以下模式(没有_id)-

 {uid: String,
inbox:[{msgid:String, someval:String}]
}

现在,在请求中我得到了 msgid 并在下面的 mongoose 查询中使用它,就像这样-

 my_model.findOne({'inbox.msgid':'msgidvaluexyz'}
, function(err, doc) {
console.log(doc);
return !0; })

现在,问题是我得到了整个文档,其中包含特定消息以及收件箱中的其他消息 -

   Output-
{uid:'xyz',
inbox:[
{msgid:,someval},
{msgid:'our queried msgid',someval}, //required sub array
{msgid:,someval},
]
}

现在我可以使用什么查询来获取特定的子数组,因为文档收件箱太大而无法循环。

最佳答案

使用 $ positional selection operator让返回的文档只包含匹配的 inbox 元素:

my_model.findOne({'inbox.msgid':'msgidvaluexyz'}
, {'inbox.$': 1}
, function(err, doc) {
console.log(doc);
return !0; })

关于javascript - 通过 mongoose 更新 mongodb 中嵌套数组中的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15827207/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com