我是想用两个参数找到要插入一个名字我的架构的“data_stream_map”阵列更新,猫鼬查找和_id
如下,
var query = {
'_id': new ObjectId("594261a0ea2d89001c851424"),
'inputs.name': "name1"
};
return WFWorkflowModel.findOneAndUpdate(query, {$addToSet: {'inputs.$.data_stream_map': "121_name1"}}).then(function (result) {
return true;
}, function (error) {
console.error("WFEditor micro service - update dataStream.");
return error;
});
在互联网上没有和我一起然而。但是,当涉及到Robomongo 0.9.0这部作品,
db.getCollection('wfcomponents').findOneAndUpdate({
_id: ObjectId("594261a0ea2d89001c851424"),
'inputs.name': "name1"
}, {$addToSet: {'inputs.$.data_stream_map': "120_name1"}})
猫鼬文件如下,
{
"_id" : ObjectId("594261a0ea2d89001c851424"),
"key" : "task",
"description" : "",
"__v" : 0,
"updated" : ISODate("2017-06-12T07:08:58.462Z"),
"created" : ISODate("2017-06-12T07:08:44.079Z"),
"gridLocation" : {
"y" : 1,
"x" : 7
},
"inputs" : [
{
"name" : "name1",
"data_stream_map" : [
]
}
]
}
所用的猫鼬版 “猫鼬”: “^ 4.6.5”,我m出了什么线索,有没有人可以帮助我解决这个问题?我提到了很多堆栈溢出问题,但仍然没有解决。
问题是什么?这看起来很好。您正在使用'.findOneAndUpdate()'而不返回文档,因此您只需使用'.update()'。那是文件不返回的问题吗? –
没问题,它不会将名称插入到data_stream_map。 – d7k
尝试更新()以及但没有帮助。 – d7k