В настоящее время я изменяю схему, и мне нужно сделать относительно тривиальное преобразование с использованием структуры агрегации и bulkWrite
.Инкапсуляция/преобразование массива в массив объектов
Я хочу, чтобы иметь возможность принять этот массив:
{
...,
"images" : [
"http://example.com/...",
"http://example.com/...",
"http://example.com/..."
]
}
и агрегат для подобного массива, где исходное значение инкапсулированных:
{
...,
"images" : [
{url: "http://example.com/..."},
{url: "http://example.com/..."},
{url: "http://example.com/..."}
]
}
Это медленно запроса работает, но смешно дорого раскрутить целую коллекцию.
[
{
$match: {}
},
{
$unwind: {
path : "$images",
}
},
{
$group: {
_id: "$_id",
images_2: {$addToSet: {url: "$images"}}
}
},
]
Как это может быть достигнуто с project
или какой-либо другой дешевой агрегации?