0

this mongoose aggregate query works with a callback in a different project I was working on earlier. For some reason in this form it does not work with the exec.

try {
    console.log(rank)
    challengeList = await Member.aggregate([
          {$match:{$and:[{MemberRank:{"$lt": rank}},{MemberIsActive: "Y"}]}},
        {$project: {MemberName:1, MemberFDR:1, MemberRank:1}},
        {$sort:{MemberRank:-1}},
        {$limit: 20}
      ]).exec()
  } catch (err) {
    const error = new HttpError(
      'Something went wrong, could not update member.',
      500
    );
    return next(error);
  }

Earlier Project where the query worked

GSM.findOne({Player_Name: req.user.Player_Name}, function(err,data2){
      if(err){
        console.log(err)
      } else {

        GSM.aggregate([
          {$match:{$and:[{Rank:{"$lt": data2.Rank}},{Player_ActivePlayer: "Y"}]}},
        {$project: {Player_Name:1, Player_FDR:1, Rank:1}},
        {$sort:{Rank:-1}},
        {$limit: 20}
      ]).exec(function(err,data){
        if(err){
          console.log(err);
        }

data provides me the list as expected

I am expecting challengeList to return my list that I need through my query. What am I missing? Can someone explain?

Sandy
  • 117
  • 9

0 Answers0