привет всем, подскажите пожалуйста.
Есть такая вот модель товара
{
"_id" : ObjectId("5ed5fcf1b74c9eccd50adf9c"),
"childCategory" : [
"850"
],
"imgf" : [
"/uploads/2020/04/ipad-1-700x700-1.jpg, /uploads/2020/04/iPad-2-700x700-1.jpg, /uploads/2020/04/ipad-4png-700x700-1.jpg"
],
"id" : 21647,
"slug" : "apple-ipad-pro-12-9-wi-fi-cellular-512gb-silver-mxg12-mxf82-2020",
"parentCategory" : "70",
"name_ru" : "Apple iPad Pro 12.9\" Wi-Fi + Cellular 1TB Silver (MXG32, MXFA2) 2020",
"name_ua" : "Apple iPad Pro 12.9\" Wi-Fi + Cellular 1TB Silver (MXG32, MXFA2) 2020",
"stock" : true,
"used" : false,
"filters" : [
{
"cellular" : "Wi-Fi + LTE",
"color" : "Silver",
"memory" : "1TB",
"model" : "iPad Pro 12.9",
"new-or-used" : "new"
}
]
}У каждого товара есть свои фильтры, например, обьем памяти, цвет и тд. Собственно вопрос, каким образом, можно для каждого товара делать доп. поле options, которое будет иметь следующий вид
"o
ptions": [
{
"slug": "color",
"items": [
{
"name": "Silver",
"color": "#c0c0c0",
"path": "product102"
},
{
"name": "Space Gray",
"color": "#343d4",
"path": "product101"
}
]
},
{
"slug": "memory",
"items": [
{
"name": "16GB",
"path": "product211"
},
{
"name": "32GB",
"path": "product212"
}
]
}
]
то есть, мне нужно на каждый товар создавать его группу, данная группа должна комбинироваться по названию фильтра и должен быть массив обьектов соседних товаров. Подскажите хотя бы как строить aggregate запрос, пробовал уже по разному и просто не могу понять как это можно реализовать. Буду рад любой помощи