web-dev-qa-db-fra.com

Requête d'expression régulière Node.js et Mongoose sur plusieurs champs

Je voudrais interroger plusieurs champs en utilisant la même expression régulière pour les deux. Dans cette requête, je voudrais accepter une seule entrée de texte et vérifier les champs firstName et lastName pour les résultats. Je peux très bien interroger un seul champ en utilisant la fonction regex dans la documentation de mangouste, mais la syntaxe d'une clause "ou" me pose problème.

var re = new RegExp(req.params.search, 'i');

app.User.find().or([{ 'firstName': { $regex: re }}, { 'lastName': { $regex: re }}]).sort('title', 1).exec(function(err, users) {
    res.json(JSON.stringify(users));
});

(J'utilise mangouste 2.7.1 sur node.js 0.6.12)

39
RevNoah

Le code ci-dessus fonctionne très bien pour une requête sur plusieurs champs. Il s'avère que j'avais de mauvaises données.

14
RevNoah