Как правильно связать 2 модели в mongo nodeJs mongoose
есть 2 модели
order:
invId: { type: Number, default: 0, unique: true },
products: { type: Object, required: true }, // это объект продуктов { productId: productIdCount }
userId: { type: Schema.ObjectId, required: true },
product:
slug: { type: String, required: true, unique: true },
description: { type: String, required: true },
images: { type: Object, default: {} },
мне нужно составить массив
[
{
invId: 1424,
price: 421,
products: [
{PRODUCT.IMAGES} // это product.images тех продуктов которые были в order.products
]
}
]
сейчас у меня выходит что-то такое:
const orders = await Order.find({}, 'price status products date url invId').sort({ date: -1 });
const productsId = [];
orders.forEach(({ products }) => {
Object.keys(products).forEach((item) => {
if (!productsId.find((idItem) => idItem === item)) {
productsId.push(item);
}
});
});
const products = await Product.find({}, 'images slug').where('_id').in(productsId);
но в конце не знаю как соеденить products с order