Mongodb ile yapılan bir api var. Bu api de boş değer dönen arrayleri hidden yapmak için nasıl bir yol izlemem gerektiğini sormak istiyorum.
Aşağıdaki çıktıda Fields ve element arraylar dolu iken sorun yok.
Ancak aşağıdaki gibi Fields ve element değerleri boş iken FieldDocs içinde bu iki arrayi kaldırmak istiyorum.
Sorgum aşağıdaki gibidir. Yardımınızı rica ederim.
await FieldGroup.aggregate([{
$match: {
_id: mongoose.Types.ObjectId(req.params.id)
}
},
{
$lookup: {
from: 'fields', //Bağlanacak collection
localField: '_id',
foreignField: 'fieldGroup',
as: 'Field' // Dönecek olan data
}
}, {
$unwind: {
path: '$Field',
preserveNullAndEmptyArrays: true,
}
},
{
$lookup: {
from: 'elements', //Bağlanacak collection
localField: 'Field.element',
foreignField: '_id',
as: 'Field.element' // Dönecek olan data
}
},
{
$group: {
_id: {
fieldGroup: {
_id: '$_id',
title: '$title',
description: '$description',
isActive: '$isActive',
createdAt: '$createdAt',
updatedAt: '$updatedAt',
}
},
// total: { $sum: 1 },
Fields: {
$push: '$Field',
}
}
}, {
$project: {
Fields: '$Fields',
}
}
])