通过mongoose更新mongo内嵌套数组中的特定值
Update specific values in a nested array within mongo through mongoose
我有以下模式(不带_id) -
{uid: String,
inbox:[{msgid:String, someval:String}]
}
现在,在请求中,我得到了msgstr,并在下面的猫鼬查询中使用它,像这样-
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},
]
}
现在,当文档收件箱太大而无法循环时,我可以使用什么查询来获取特定的子数组
使用$
位置选择运算符使返回的文档只包含匹配的inbox
元素:
my_model.findOne({'inbox.msgid':'msgidvaluexyz'}
, {'inbox.$': 1}
, function(err, doc) {
console.log(doc);
return !0; })
如果我理解对了你的问题:
// find each person with a last name matching 'Ghost'
var query = Person.findOne({ 'name.last': 'Ghost' });
// selecting the `name` and `occupation` fields
query.select('name occupation');
http://mongoosejs.com/docs/queries.html 您可以选择要返回的字段。你可以只得到inbox
数组或者其他的东西
相关文章:
- 从多维嵌套json数组创建下拉列表
- 如何通过json对象数组为嵌套对象赋值
- 为循环嵌套的Javascript未按预期返回数组
- 具有嵌套对象数组的 Javascript 对象的递归搜索函数
- 将js对象更改为使用嵌套的可观察数组敲除js视图模型
- MongoDB嵌套对象数组后查询
- 从对象数组中动态创建嵌套json
- 使用Angular.js解析JSON中的嵌套对象数组
- 如何将id数组与带下划线的对象数组嵌套属性进行比较
- 将JS对象数组转换为嵌套形式的最有效方法
- 在javascript/angular中创建播放列表(按值复制数组,但按引用设置嵌套对象)
- 嵌套在 ng 重复中的拼接数组
- JavaScript格式的对象数组嵌套到子对象中
- JSON 将对象数组嵌套到表
- 如何获取数组嵌套对象子对象的父对象| MeteorJs-Astronomy
- 从数组嵌套JSON
- 使用AngularJS的JSON对象在数组嵌套在一个数组中,我怎么能得到数据到html
- 深入研究JavaScript中的一组嵌套对象
- 如何获得数组嵌套在对象的总和
- 将数组嵌套到主干模型中