Récemment, j'ai commencé à utiliser MongoDB avec Mongoose sur Nodejs. Lorsque j'utilise la méthode Model.find avec la condition $or
et le champ _id
, Mongoose ne fonctionne pas correctement.
Cela ne fonctionne pas:
User.find({
$or: [
{ '_id': param },
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
D'ailleurs, si je retire la partie '_id', cela fonctionne!
User.find({
$or: [
{ 'name': param },
{ 'nickname': param }
]
}, function(err, docs) {
if(!err) res.send(docs);
});
Et dans le shell MongoDB, les deux fonctionnent correctement.
Vous pouvez le marquer comme la réponse à votre question. – fernandopasik
pouvez-vous décrire pourquoi cette solution fonctionne avec des mots? merci –
ne fonctionne pas pour moi – OMGPOP