findAndModify
metoda má následující podpis
findAndModify(query, sort, doc, options, callback)
kde
query
<object>
:Objekt dotazu k vyhledání objektu, který chcete upravit.sort
<array>
:Pokud se shoduje více dokumentů, vyberte jako objekt, se kterým chcete manipulovat, první z nich v určeném pořadí řazení.doc
<object>
:Pole/hodnoty, které mají být aktualizovány.options
<object>
volitelné:Volitelná nastavení.
Důvodem, proč se vám zobrazuje chyba, je sort
chybí specifikace a místo toho čte aktualizaci doc
jako sort
parametr.
Parametr řazení musíte zadat následovně:
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);
}
}
);