Recientemente comencé a usar MongoDB con Mongoose en Nodejs.
Cuando uso el método Model.find con la condición $or
y el campo _id
, Mongoose no funciona correctamente.
Esto no funciona:
User.find({
$or: [
{ '_id': param },
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
Por cierto, si quito la parte '_id', esto funciona!
User.find({
$or: [
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
Y en el shell MongoDB, ambos funcionan correctamente.
Puede marcarlo como la respuesta a su pregunta. – fernandopasik
¿Puedes describir por qué esta solución funciona con palabras? gracias –
no funciona para mí – OMGPOP