【发布时间】:2018-10-01 15:44:03
【问题描述】:
我正在尝试使用服务器端的 feathersjs 方法更新我的文档,如下所示:
context.app.service('myDocumens').update({
_id: obj._id,
'data': {
"$not": {
"$elemMatch": {
'year': 2018
}
}
}
}, {
$addToSet: {
'data': {
'position': 'senior',
'group': 1,
'comment': "",
'year': 2018
}
}
}).then(result => {
console.log(result)
});}
我在下面显示示例文档:
{
"_id": ObjectId("...."),
"firstName": "Adam",
"lastName": "Brown",
"data": [
{ "position":"senior","group":1,"comment":"","year":2018 },
{ "position":"junior","group":0,"comment":"","year":2017 }
]
}
使用上面的查询,我尝试将新对象添加到数组中,其中包含字段 'year': 2018 如果它在此数组中不存在,但在向数组运行此查询后一直添加新对象,尽管数组已经包含一个字段为“年”的对象:2018。怎么了?
当我在 mongoDb shell 中运行上述查询时,它工作正常。
【问题讨论】:
-
您可以添加示例数据吗?
标签: node.js mongodb mongoose feathersjs