Node.js 如何在MongoDB中增加嵌套值
我试图在mongoDB文档中增加一个值 下面是文档结构 在本例中,我希望使用匹配的用户名和相应的cardid1001在对象上增加knowCnt 这是到目前为止我的代码。它返回success,但该值在数据库中不会增加Node.js 如何在MongoDB中增加嵌套值,node.js,mongodb,Node.js,Mongodb,我试图在mongoDB文档中增加一个值 下面是文档结构 在本例中,我希望使用匹配的用户名和相应的cardid1001在对象上增加knowCnt 这是到目前为止我的代码。它返回success,但该值在数据库中不会增加 var knowIncr = function(cnt) { db.collection("testusers").updateOne( //collection.update depreciated!!! { $and: [
var knowIncr = function(cnt) {
db.collection("testusers").updateOne( //collection.update depreciated!!!
{ $and: [
{ username: "user1" },
{ cardId: 1001 },
]},
{ $inc: { knowCnt: 1 } }, //increment by 1
{ new: true },
(err, data) => {
if (err) {
console.log(err);
}
console.log("knowIncr success", data);
}
);
};
knowIncr();
我也尝试过.updateOne{username:user1,carid:1001}。。。无济于事
谢谢在访问其中一个对象之前,您必须指定数组名称,下面是一个示例:
db.testUsers.updateOne({
"username": "user1",
"progress.cardId": 1001
}, {
$inc: {
"progress.$.knowCnt": 1
}
});
以下是有关更新阵列和使用$sign:的更多信息:您遇到了什么错误?我没有收到任何错误。成功消息返回,但数据库不更新。您得到的数据值是多少?