Мне нужно найти мои данные, которые соответствуют определенному типу. Скажем, у меня есть массив объектов в моей БД, каждый объект имеет leadType : all
или leadType: blacklist
. Каждый объект имеет различный вид leadType
значения, связанного с ним.
Я хочу получить полные данные, соответствующие конкретному типу leadType, например leadType: 'radar'
.
Я попытался использовать следующий запрос, но наряду с соответствующими документами он также возвращает пустые документы который не соответствует указанной проекции.
Это то, что я пытался:
exports.leads_by_type = (req, res) => {
const { lead_type } = req.body;
Lead.find({}, { leads: { $elemMatch: { leadType: lead_type }}} )
.then(data => {
if (!data || data.length === 0) {
return res.status(404).json({ message: "No data found" });
}
res.status(200).json({ message: "Data found", data });
})
.catch(err => res.status(500).json({ err }));
};
и возвращает мне вывод следующим образом:
{
"message": "Data found",
"data": [
{
"_id": "5e83427079f7611bdc1e48a0",
"leads": [
{
"education": {
"school": "happy kids corner",
"graduation": "some school"
},
"currentPosition": {
"title": "Salesforce developer",
"endDate": "currently working",
"employmentType": "full-time",
"industry": "information technology"
},
"location": {
"state": "delhi",
"country": "india"
},
"leadType": "radar",
"name": "Ben",
"mobile": 1524524678,
"_id": "5e83427079f7611bdc1e489e"
}
]
},
{
"_id": "5e84cb4fb59fdd1644e7c226",
"leads": [
{
"education": {
"school": "happy kids corner",
"graduation": "some school"
},
"currentPosition": {
"title": "Salesforce developer",
"endDate": "currently working",
"employmentType": "full-time",
"industry": "information technology"
},
"location": {
"state": "delhi",
"country": "india"
},
"leadType": "radar",
"name": "joey",
"mobile": 1524524678,
"_id": "5e84cb4fb59fdd1644e7c224"
}
]
},
{
"_id": "5e84cb70b59fdd1644e7c229",
"leads": []
},
{
"_id": "5e84cb88b59fdd1644e7c22c",
"leads": []
},
{
"_id": "5e84cbb7b59fdd1644e7c232",
"leads": []
},
{
"_id": "5e84cbd9b59fdd1644e7c235",
"leads": [
{
"education": {
"school": "happy kids corner",
"graduation": "some school"
},
"currentPosition": {
"title": "Salesforce developer",
"endDate": "currently working",
"employmentType": "full-time",
"industry": "information technology"
},
"location": {
"state": "delhi",
"country": "india"
},
"leadType": "radar",
"name": "rhea",
"mobile": 1524524678,
"_id": "5e84cbd9b59fdd1644e7c234"
}
]
}
]
}
Пожалуйста, помогите мне чтобы исправить, удалите эти пустые объекты из вывода данных
Редактировать: Добавление скриншота моей БД: