Предположим, у вас есть этот массив fileNames
:
[
'filename1_c4d.rar',
'text122_octane.c4d',
'texture1.png',
'texture2.png',
]
И в моей базе данных у меня есть коллекция Tags
:
[
{
_id: 'id1',
name: 'cinema4d',
aliases: ['.c4d', 'c4d', 'cinema4d'],
},
{
_id: 'id2',
name: 'octane',
aliases: ['octane'],
},
{
_id: 'id3',
name: 'textures',
aliases: ['texture', 'textures'],
},
// ...
]
Моя цель - получить всеTags
с подстрокой моего fileNames
в aliases
, с помощью mongoose
.(Tags.find({ someFancyQuery: fileNames })
)
Вот пример, чтобы сделать его более понятным:
У меня есть этот fileName: filename1_c4d.rar
.Основываясь на этом имени, запрос должен быть в состоянии получить Tag
с именем cinema4d
, потому что его псевдонимы включают подстроку fileName filename1_
c4d
.rar
Таким образом, эти fileNames должны получить следующее Tags
:
Итак, в итоге результат запроса должен быть таким: Tags
(без дублирования):
cinema4d, octane, textures
PS: объяснить, что это такоеfor:
Пользователь может загрузить, например, файл .rar
, и я хочу автоматически назначать теги на основе имен файлов, которые находятся внутри файла .rar
.
НадеюсьПонятно, какова моя цель.Пожалуйста, дайте мне знать, если есть что-то, чего вы не понимаете.