我正在通过两个硬编码索引(0 和 0 in)更新文档$set,它工作得很好。
var result = db.collection('users', function (err, update_node) {
update_node
.updateOne(
{
_id: ObjectID(req.body.userid),
"portfolio.nodes.node_id": ObjectID(req.body.nodeid)
},
{
$set: {
"portfolio.0.nodes.0.node_name": req.body.node_name
}
}
)
.then(function (doc) {
res.send(doc);
});
});
如何在 $set 中使用 index1 和 index2?
const index1 = 0;
const index2 = 0;
var result = db.collection('users', function (err, update_node) {
update_node
.updateOne(
{
_id: ObjectID(req.body.userid),
"portfolio.nodes.node_id": ObjectID(req.body.nodeid)
},
{
$set: {
'portfolio.index1.nodes.index2.node_name': req.body.node_name
}
}
)
.then(function (doc) {
res.send(doc);
});
});
我还尝试了位置运算符:
'portfolio.$.nodes.$.node_name': req.body.node_name
但是看起来没有办法在 MongoDB 中使用多个位置运算符。太感谢了。
德玛西亚99
相关分类