我正在使用express来构建api,我具有发布关于数据行情自动收录器的功能,并且1个发布中包含项。
我尝试运行2个查询来查找和删除帖子,如果该帖子存在,它将在此之后被删除,我进行查询以删除与该帖子相关的项目。
const destroy = (req, res) => {
DataTickerModel.findOneAndDelete({
_id: req.params.id
}, (err, dataTicker) => {
if (err){
res.send({
success: false,
message: 'Error: There is some error.'
})
} else {
res.send({
success: true,
message: dataTicker.title+ ' deleted.'
})
DataItemModel.remove({
dataId: {
$in: [
dataTicker._id
]
}
})
}
})
.catch(err => {
res.status(500).json(err)
})
}
所以我期望的是,如果我删除帖子,那么这些项目也将被删除。
答案 0 :(得分:0)
尝试如下操作:
const destroy = (req, res) => {
DataTickerModel.findOneAndDelete({
_id: req.params.id
}, (err, dataTicker) => {
if (err){
res.send({
success: false,
message: 'Error: There is some error.'
})
} else {
console.log('@@',req.params.id)
console.log('@@',dataTicker._id)
DataItemModel.remove({
dataId: {
$in: [
req.params.id
]
}
})
res.send({
success: true,
message: dataTicker.title+ ' deleted.'
})
}
})
.catch(err => {
res.status(500).json(err)
})
}
并确保字段名称“ dataId”正确