findAndModify
методът има следния подпис
findAndModify(query, sort, doc, options, callback)
където
заявка
<обект>код> :Обектът на заявката за намиране на обекта за промяна.
сортиране
<масив>код> :Ако съвпадат няколко документа, изберете първия в посочения ред на сортиране като обект за манипулиране.
doc
<обект>код> :Полетата/стойностите за актуализиране.
опции
<обект>код> по избор:Незадължителни настройки.
Причината, поради която получавате грешката, е, че sort
липсва спецификация и вместо това чете актуализацията doc
като сортиране
параметър.
Трябва да посочите параметъра за сортиране, както следва:
db.get().collection('bars').findAndModify(
{ "barID": req.body.button }, // query
[ ["barID", 1] ], // sort
{
"$push": { // doc
"usersfbID": req.body.profileUser[0].facebookID,
"usersDocID": req.body.profileUser[0]._id
}
},
{ "new": true }, // options
function(err, doc){ // callback
if (err){
throw err;
} else if(doc){
console.log('Existing document updated successfully');
console.log(doc);
}
}
);