2015-04-22 15 views
5

Chcę w zasadzie zrobić wyszukiwanie nazwy użytkownika.Mongoose: Zapytanie o rozpoczęcie z

User.find({ username: "Mich"}) 

chciałbym zapytać jak wyżej, że będzie powrót do wszystkich użytkowników, którzy użytkownika Użytkownik zaczyna się „Mich”. Michael, Michaela, MichJagger itp

Odpowiedz

21

Można search with regex, to powinno działać w węźle

User.find({ username: /^Mich/}) 

Zauważ, że Mongo obsługuje regex obiektów, co oznacza, że ​​można zrobić

var regexp = new RegExp("^"+ req.params.username); 
User.find({ username: regexp}); 

lub Mongos właścicielem konstruktor regex

User.find({ username: {$regex : "^" + req.params.username}}); 
+1

Jak wstawić tę wartość? To znaczy. Jeśli mam go ponownie req.params.username? To znaczy, jak mam zastąpić Mich zmienną? – opticon

+0

z ciągiem szablonu, jeśli ktoś zainteresowany: '' '{$ regex:'^$ {req.params.username} '}' '' '' 'var regexp = new RegExp ('^$ {req.params.username} '); '' ' –