{
_id: 'uniquewId',
programs: [
{
prgName: 'prgOne',
progress: '5',
addedBy: 'coach'
exercises: [
{
date: '1/12/20',
exercises: [
{
exId: 'pushup',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: false
}
]
},
{
exId: 'situp',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: true
}
]
}
]
},
{
date: '2/12/20',
exercises: [
{
exId: 'pushup',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: false
}
]
},
{
exId: 'situp',
progress: 5,
attributes: [
{
id: 'myId',
done: fase
},
{
id: 'myId2',
done: false
}
]
}
]
}
]
},
{
prgName: 'prgTwo',
progress: '5',
addedBy: 'coach2'
exercises: [
{
date: '1/12/20',
exercises: [
{
exId: 'pushup',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: true
}
]
},
{
exId: 'situp',
progress: 5,
attributes: [
{
id: 'myId',
done: false
},
{
id: 'myId2',
done: false
}
]
}
]
},
{
date: '2/12/20',
exercises: [
{
exId: 'pushup',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: false
}
]
},
{
exId: 'situp',
progress: 5,
attributes: [
{
id: 'myId',
done: true
},
{
id: 'myId2',
done: false
}
]
}
]
}
]
}
]
}
Это выше структура моего документа. То, что я хочу сделать, это из массива программ, который я хочу спроецировать с именем упражнений, у которых есть только один документ в массиве атрибутов, в котором ключ помечен как истинный. То, что я пытаюсь сделать, это выяснить упражнения, которые выполнили значение true в массиве атрибутов
Есть ли какой-нибудь способ, которым я могу получить вывод как:
{
_id: 'uniquewId',
programs: [
{
prgName: 'prgOne',
exercises: [
'pushup',
'situp'
]
},
{
prgName: 'prgTwo',
exercises: [
'pushup',
'situp'
]
}
]
}