Мое экспресс-приложение должно выполнять частичный поиск.
Моя модель объекта:
var mongoose = require("mongoose");
var subjectschema = new mongoose.Schema({
Subject_Name: String,
Subject_DOB: Date,
Subject_Address: String,
Subject_City: String,
Subject_Prov: String,
Subject_zip: String,
Subject_Country: String
},{ strict: false });
subjectschema.index({ Subject_Name: "text" })
module.exports = mongoose.model("subject", subjectschema);
Мой маршрут поиска (POST):
router.post("/visit", middleware.isLoggedin, function(req,res){
var text = req.body.user;
subject.find({ $text:{$search: text}}).sort('Visit_date').exec(function(err,returnedsubjects){
if(err){
console.log(err);
} else {
console.log(returnedsubjects);
res.render("visit",{returnedsubjects: returnedsubjects});
}
});
});
Имя_убъекта в MongoDB - "Стивен Смит" * Мой поиск не чувствителен к регистру (Большой!). Можно искать «Стивен» или «Стивен». * Я могу сделать частичные полные слова. Можно искать «Стивен» или «Смит»
Но если я найду «Стив» или «Сте», я подумал, что найдет запись. Но это не так.
Как мне выполнить поиск?
Спасибо!