[英]MongoInvalidArgumentError: Selector must be a valid JavaScript object
我的 monogodb 中有包含用户名、密码和数组的文档以及此方法的功能,它采用某种字符串并使用 session.username 将其放入数组中
但是每当我尝试调用它并运行它时,它都会给我
MongoInvalidArgumentError: Selector must be a valid JavaScript object
正好在线 db.updateOne(.........
MongoClient.connect("mongodb://127.0.0.1:27017", function (err, client) {
let db = client.db('MyDB').collection('FirstCollection');
let username = req.session.username;
db.findOne({username: username},function(err,result){ const list = result.list;
let found = false;
for (let i = 0; i < list.length; i++) {
if (list[i] == destination) {
found = true;
}
}
if (found) {
alert("already on your want to go list!");
} else {
alert("added successfully");
list.push(destination);
db.updateOne(username, {$set: {list: list}}, function (err, res) {
if (err) throw err;
});
}
});});
我尝试使用更新而不是 updateOne 并尝试创建和新数组更新它并推送它而不是旧数组。
updateOne的第一个参数应该是一个过滤器,但您传递的是一个裸用户名。
采用
db.updateOne({username: username}, {$set: {list: list}}, function (err, res) {
要么
db.updateOne({username}, {$set: {list: list}}, function (err, res) {
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.