Я использую Node.js + Express для бэкенда и MongoDB для базы данных.Моя проблема в том, что когда я записываю данные в базу данных, вложенные документы остаются пустыми, т.е. я не могу записать данные в вложенные документы.
Ответ
Поля employeeInformationДо отмены повода есть все поддокументы.Когда я делаю console.log из req.body, я вижу, что мои поля заполнены правильными значениями, но в MongoDB и в ответе данных нет.Я также могу писать хорошо, используя Почтальон.
Вот мой код app.post:
// POST
app.post('/create-incident', (req, res) => {
let incidentNumber = functions.createIncidentNumber();
let status = 'New';
const incidentHeader = new IncidentHeader({
incidentNumber: incidentNumber,
status: status,
employeeInformation: req.body.employeeInformation,
incidentDetail: req.body.incidentDetail,
spi: req.body.spi,
investigationDetail: req.body.investigationDetail,
recommendation: req.body.recommendation,
dataPrivacyDetail: req.body.dataPrivacyDetail,
infrastructureDetail: req.body.infrastructureDetail,
dataElement: req.body.dataElement,
processIncident: req.body.processIncident,
legislation: req.body.legislation,
dataPrivacyEducation: req.body.dataPrivacyEducation,
rca: req.body.rca,
approval: req.body.approval,
auditTrail: req.body.auditTrail,
cancellationReason: req.body.cancellationReason
});
console.log(`req.body: ${JSON.stringify(req.body)}`);
incidentHeader
.save()
.then(IncidentHeader => {
res.status(200).send(JSON.stringify(IncidentHeader));
console.log('Saved to IncidentHeader.');
})
.catch(e => {
return res.status(400).send(e);
console.log('Unable to save to IncidentHeader.');
});
});
Что я могу здесь делать неправильно?
Вот ссылка наМой проект GitHub, если вы хотите проверить код дальше.Заранее спасибо.
GitHub Repo