Reputation: 580
I have a mongoose query which finds all the rewards which a user got and not yet redeemed.
Reward.find({user: user, redeemed: false}).exec(callback)
I want to change it to all the rewards which are not redeemed, and the rewards which are redeemed today. Is this the right way to go.
Reward.find({user:user})
.where('redeemed').equals('false')
.where('redeemed').equals('true').gt(yesterday)
.exec(callback)
Upvotes: 1
Views: 189
Reputation: 823
You need to use an or
query
Reward.find({
user:user
$or:[{
redeemed: false
},
{
redeemed: true
redeemed_date: {
$gt : yesterday
}
}]
}, callback)
For a better readability you can use or
as a promise
Reward.find({user:user})
.or([{redeemed: false},
{
redeemed: true,
redeemed_date: {
$gt : yesterday
}
}])
.exec(callback)
Upvotes: 1