FindOneAndUpdate with sorting and limit

var query = Session
   .find({ player: player, logout: null })
   .sort({ 'login.date': -1 })
   .limit(1);

query.exec(function(err, data) {
  var session = new Session(data);
  session.logout = logoutEvent;
  session.save();
});

      

How can I convert this to findOneAndUpdate ?

Here is an example using findOneAndUpdate, but I'm not sure how to add sort

and limit

:

var query = {'username':req.user.username};
req.newData.username = req.user.username;
MyModel.findOneAndUpdate(query, req.newData, {upsert:true}, function(err, doc){
    if (err) return res.send(500, { error: err });
    return res.send("succesfully saved");
});

      

+3


source to share


1 answer


You can add sorting to your dict options:



{ upsert: true, sort: { 'login.date': -1 } }

      

+3


source







All Articles