Я использую mongodb с mon goose в моем проекте. Я пытаюсь использовать текстовые индексы, чтобы я мог реализовать функцию поиска. Я установил для параметра auotIndex значение true, но я все еще получаю следующую ошибку «MongoError: текстовый индекс, необходимый для запроса $ text», это указывает на то, что текстовые индексы не были сгенерированы, и поэтому autoIndex не работает, если я не ошибаюсь.
Кстати, я знаю, что autoIndex не должен быть в готовых к работе приложениях, потому что он тяжелый, но проект, над которым я работаю, предназначен только для учебных целей.
// Database start upp
(async () => {
const DB_URI = "mongodb://localhost:27017/photogram-db";
const DB_SETTINGS = {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
autoIndex: true
};
await mongoose.connect(DB_URI, DB_SETTINGS);
})();
// Person model / schema
const PersonSchema = new Schema({
firstName: String,
lastName: String,
username: String,
});
PersonSchema.index({
firstName: "text",
lastName: "text",
username: "text"
});
const PersonModel = model("Person", PersonSchema);