У меня есть следующий код для обновления документа в поле подмножества, и я получаю исключение, за которым следует код.findAndModify() предоставление исключения в mongoose
router.route('/user/:_id/host/:_id/accept/').post(function(req, res) {
Host.findAndModify({
"query" : {
"_id" : req.body.eventid,
"joinees" : {
"$elemMatch" : {
"userid" : req.body.userid
}
}
},
"update" : {
"$set" : {
"joinees.$.status_code" : 1
},
},
"new" : true,
"upsert" : false
}, function(err, host) {
if (err) {
console.log(err);
res.json(err);
} else {
console.log("kanishka");
res.json(host);
}
});
});
Исключение печататься в консоли приводится ниже:
TypeError: undefined is not a function
at Object.handle (/node/Playo1/server1.js:332:7)
at next_layer (/node/Playo1/node_modules/express/lib/router/route.js:103:13)
at Route.dispatch (/node/Playo1/node_modules/express/lib/router/route.js:107:5)
at /node/Playo1/node_modules/express/lib/router/index.js:195:24
at param (/node/Playo1/node_modules/express/lib/router/index.js:268:14)
at param (/node/Playo1/node_modules/express/lib/router/index.js:280:16)
at param (/node/Playo1/node_modules/express/lib/router/index.js:280:16)
at Function.proto.process_params (/node/Playo1/node_modules/express/lib/router/index.js:296:3)
at next (/node/Playo1/node_modules/express/lib/router/index.js:189:19)
at next (/node/Playo1/node_modules/express/lib/router/index.js:166:38)
'.findAndModify()' не является методом моделей мангуста. См. ['.findOneAndUpdate()'] (http://mongoosejs.com/docs/api.html#model_Model.findOneAndUpdate) или ['.findByIdAndUpdate()'] (http://mongoosejs.com/docs/api. html # model_Model.findByIdAndUpdate), которые являются оболочками специального назначения для метода базового драйвера. –
@NeilLunn: Спасибо, Бадди ... Это сработало ... –