我想知道如何使用Node js驱动程序为mongoDB编写更新,其要求如下所示
我在集合中的文档是这样的
{
"_id": {
"$oid": "5a4e098e734d1d089c5a7473"
},
"username": "guest",
"password": "guest",
"categories": {
"movie": [
"Minions",
]
}
}
现在我想在名为games的类别中添加一个新字段,其中数组作为特定用户名的值
我写的查询如下,但它没有工作
db.collection('userdata').aggregate([ { '$match': { "username": "guest" } },{ '$addFields ': { "catagories.games" : [] }}],function(err, docs) {
assert.equal(null, err);
console.log(docs);
});
我想知道我哪里出错或如何解决这个问题
答案 0 :(得分:0)
你可以使用mongodb的更新功能
db.userdata.update(
{ "username": "guest" },
$set:{
"catagories.games" : []
},
{ upsert: true }
)
upsert true表示如果不存在,则插入 源 - https://docs.mongodb.com/manual/reference/method/db.collection.update/