mongoose查询与哪里

我有一个mongoose查询,发现用户得到,但尚未赎回的所有奖励。

Reward.find({user: user, redeemed: false}).exec(callback) 

我想把它变成所有没有赎回的报酬,以及今天所赎回的报酬。 这是正确的路要走。

 Reward.find({user:user}) .where('redeemed').equals('false') .where('redeemed').equals('true').gt(yesterday) .exec(callback) 

您需要使用or查询

 Reward.find({ user:user $or:[{ redeemed: false }, { redeemed: true redeemed_date: { $gt : yesterday } }] }, callback) 

为了更好的可读性,您可以使用or作为承诺

  Reward.find({user:user}) .or([{redeemed: false}, { redeemed: true, redeemed_date: { $gt : yesterday } }]) .exec(callback)