NeDB 更新但删除未更新的字段,为什么?
NeDB updates but removes fields that wasn't updated, why?
我正在为 node.js 中的 discord 编写一个小脚本,并将 NeDB 用作数据库,但是当我更新一行时,它会执行更新但会删除字段 "userid".
db.update({userid: "u"+uid}, {credits: credit, dailyTime: currentTime}, {}, function(err, numReplaced){
if(err) console.log(err);
message.channel.send("<@"+uid+"> You received your daily credit! Your now have "+credit+" Credit!");
});
这是我的更新代码,当我获得所有用户时,一个对象现在具有信用、dailyTime 和 _id,但没有 userid。为什么会被删除?
P.S:我已经搜索了 google,但只有更新无法正常工作的问题,但对我来说,它的工作并不像我预期的那样。
我猜你忘了指定 $set 修饰符,它表示要更改字段的值。尝试这样的事情:
db.update({userid: "u"+uid}, {$set:{credits: credit, dailyTime: currentTime}}, {}, function(err, numReplaced){
if(err) console.log(err);
message.channel.send("<@"+uid+"> You received your daily credit! Your now have "+credit+" Credit!");
});
请查看official docs更新文档
我正在为 node.js 中的 discord 编写一个小脚本,并将 NeDB 用作数据库,但是当我更新一行时,它会执行更新但会删除字段 "userid".
db.update({userid: "u"+uid}, {credits: credit, dailyTime: currentTime}, {}, function(err, numReplaced){
if(err) console.log(err);
message.channel.send("<@"+uid+"> You received your daily credit! Your now have "+credit+" Credit!");
});
这是我的更新代码,当我获得所有用户时,一个对象现在具有信用、dailyTime 和 _id,但没有 userid。为什么会被删除?
P.S:我已经搜索了 google,但只有更新无法正常工作的问题,但对我来说,它的工作并不像我预期的那样。
我猜你忘了指定 $set 修饰符,它表示要更改字段的值。尝试这样的事情:
db.update({userid: "u"+uid}, {$set:{credits: credit, dailyTime: currentTime}}, {}, function(err, numReplaced){
if(err) console.log(err);
message.channel.send("<@"+uid+"> You received your daily credit! Your now have "+credit+" Credit!");
});
请查看official docs更新文档