【发布时间】:2021-09-16 00:47:14
【问题描述】:
我需要后端方面的帮助。我正在使用邮递员,这是我的后端模型:
name: {
type: String,
required: [true, 'Department Name is Required']
},
description: {
type: String,
required: [true, 'Description is Required']
},
agents: [
{
agentId: {
type: String,
required: [true, 'Agent ID is Required']
},
createdOn: {
type: String,
default: new Date()
}
}
]
我正在尝试将文档推送到代理数组中,但我遇到了一些错误。
路由和控制器如下:
Routes:
router.post('/enroll', (req, res) => {
UserController.enroll(req.body).then(result => res.send(result))
});
Controllers:
module.exports.enroll = (params) => {
return Department.findById({departmentId: params.departmentId}).then(department => {
department.agents.push({userId: params.userId})
return department.save().then((department, error) => {
return (err) ? false : true
})
})
}
这是我得到的错误: (node:9916) UnhandledPromiseRejectionWarning: CastError: Cast to ObjectId failed for value "{ departmentId: '60e27549c36af1272812c4e3' }" (type Object) at path "_id" for model "Department"
目标是查找部门id,会推送我已经获取的agent id。
【问题讨论】:
标签: node.js mongodb mongodb-query