Recentemente, comecei a usar o MongoDB com o Mongoose no Nodejs.
Quando eu uso o método Model.find com $or
condição e _id
campo, o Mongoose não funciona corretamente.
Isso não funciona:
User.find({
$or: [
{ '_id': param },
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
A propósito, se eu remover a parte '_id', isso FUNCIONA!
User.find({
$or: [
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
E no shell do MongoDB, ambos funcionam corretamente.