c#Beginnerrrr Ответов: 0

Найдите конкретную дочернюю запись, используя идентификатор в nodejs


это моя модель:

const userSchema = новая схема({
имя пользователя: String,
парольная строка,
mobileno: строка,
"имя": строка,
фамилия: String,
роль: строка,

расходы:[
{
биллно: номер,
createdAt: дата,
сумма: количество,
строка описания,

}
],
суммарный расход: {
типовое число
},

}, { versionKey: false });

Я хочу получить конкретную дочернюю запись с помощью идентификатора:

То, что я пробовал, это:

User.find({'expenses._id': req.params.id},
              (err, doc) => {
                    if (!err) {
                       
                         res.send(doc);
                     }
                     else {
                        console.log('Error in Retriving User: ' + JSON.stringify(err, undefined, 2));
                     }
              });



Это позволяет получить все записи расходов независимо от идентификатора.



Пример вывода:
{
_id: '111',
название:"Тест",
расходы:[
{
"_id":222,
"Бильно": "123"
},
{
"_id":333,
"Бильно": "1235"
}
]
}

Мой вывод должен быть таким:
(Если я передам свое удостоверение личности как 222, то)

{
_id: '111',
название:"Тест",
расходы:[
{
"_id":222,
"Бильно": "123"
}
]
}

Мне нужна только запись, в которую передается идентификатор.

Что я уже пробовал:

<pre>User.find({'expenses._id': req.params.id},
              (err, doc) => {
                    if (!err) {
                       
                         res.send(doc);
                     }
                     else {
                        console.log('Error in Retriving User: ' + JSON.stringify(err, undefined, 2));
                     }
              });

0 Ответов