Я использую MongoDB, эластичный поиск и node.js в моем проекте.У меня есть модель вложения в моем проекте, в которой для каждого документа есть поле fileName, в котором хранится имя вложения, и я создаю индекс в поле «fileName», используя mongoosastic в упругом поиске.Когда файл успешно загружен, пользователь может найти вложение, указав имя вложения, и оно работает нормально, но когда пользователь изменил имя вложения, как в моем проекте, любой пользователь может изменить имя вложения файла, который у него есть.загружено.Таким образом, после изменения имени, если пользователь ищет вложение, используя новое имя, оно не показывает никакого вывода ??Может кто-нибудь сказать мне, как я могу переиндексировать новое имя в упругом поиске с помощью mongoosastic ??Ниже представлена схема эластичного поискового запроса и модели вложения
attachmentModel.Attachment.search({
"match_phrase_prefix": {
"fileName": name
}
}, (err, result) => {
if (err) {
reject(err);
} else {
resolve(result.hits.hits);
}
})
const attachmentSchema = Schema ({
createdAt : { type: Date },
updatedAt : { type : Date},
createdBy : { type : Schema.Types.ObjectId , ref : 'User'},
updatedBy : { type : Schema.Types.ObjectId , ref : 'User'},
type : { type : String , enum : ["Image","Video","Other","Youtube"]},
fileName : { type :String,es_index:true},
fileURL : { type :String},
fileThumbURL : { type: String},
metadata : {
type : { type : String},
size : { type: Number},
duration : { type : Schema.Types.Decimal128 }
}
});