Как создать поисковый запрос для частичных совпадений строк в Mongoose?
Я новичок в Мангуста.js и мне интересно, как создать простой запрос мангуста, который возвращает значения, содержащие символы в том порядке, в котором они были отправлены.
Это будет для формы автозаполнения, которая должна возвращать города с именами, содержащими символы, введенные в поле поиска. Должен ли я начать с .where
запрос?
1 ответов
вы можете найти regexp, который должен позволить вам искать гибким (хотя и не очень быстрым) способом. Код будет чем-то похожим на;
var input = 'ln'; // the input from your auto-complete box
cities.find({name: new RegExp(input, "i")}, function(err, docs) {
...
});
конечно, вы можете предварительно обработать строку, чтобы она соответствовала с самого начала (добавить ^
), С конца (добавлять к $
) etc. Просто обратите внимание, что сопоставление с произвольными частями длинных строк может быть медленным.