【发布时间】:2019-10-06 04:12:38
【问题描述】:
创建记录后,我尝试使用 $push 将刚刚创建的记录的 ID 发送到不同的模型中。
likeRoutes.route('/add').post(function(req, res){
let like = new Like({
value: req.body.value,
_report: req.body._report
})
like.save((err, doc) => {
if (err)
res.send(err)
console.log('in router - card id', req.body._report)
console.log('doc id', doc)
Report.findOneAndUpdate({ _id: req.body._report },
{ $push: { like: doc._id } },
{ new: true , useFindAndModify: false },
(err, post) => {
if (err)
res.send(err)
res.json({doc})
}
)
})
})
当我运行这个时,我不断收到Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
的错误
我之前是这样配置的:
Report.findOneAndUpdate({ _id: req.body._report },
而且每次都是在同一份报告中添加like记录,并没有按ID查找。
【问题讨论】:
标签: node.js mongodb express mongoose