Mongoose FindByid删除获取状态404
我正试图使用_id删除一条记录,但是我从邮递员那里得到了404状态。这里哪里出了问题Mongoose FindByid删除获取状态404,mongoose,Mongoose,我正试图使用_id删除一条记录,但是我从邮递员那里得到了404状态。这里哪里出了问题 router.delete('/sale/delete/:id', function(req, res) { Sale.findByIdAndRemove({ _id: req.params.id }, function(err, respRaw) { if (err) { console.
router.delete('/sale/delete/:id', function(req, res) {
Sale.findByIdAndRemove({
_id: req.params.id
},
function(err, respRaw) {
if (err) {
console.log(err)
}
res.status(204).json(respRaw)
})
});
我通过使用
Sale.findByIdAndRemove(id, options, function(err, respRaw) {}
添加以下内容作为作者回答的补充:
findbyiandremove()
与findOneAndRemove()
相混淆,即其参数
: 参数
- 要查询的_id的id«Object | Number | String»值
- [选项]«对象»可选
- [options.strict]«Boolean | String»覆盖模式的严格模式选项
- [回调]«函数»
- «查询»
findbyiandremove(id,…)
相当于findOneAndRemove({u id:id},…)
查找匹配的文档,将其删除,并将找到的文档(如果有)传递给回调
如果传递了回调,则执行查询
: 参数
- 条件«对象»
- [选项]«对象»可选
- [options.strict]«Boolean | String»覆盖模式的严格模式选项
- [回调]«函数»
- «查询»
如果通过回调,则执行查询。是否可以在映像或请求URI中共享请求?使用
if(err){console.log(err);return;}…
或if(err){console.log(err)}else{res.status(204).json(respRaw)}
我想我为您找到了它:从'sale/delete/:id'
修改为'/api/sale/delete/:id'
。让我知道它是否有效。api/sale实际上是正确的,我有app.get('/api',cors(),(req,res,next)=>{在我的主要js脚本中很高兴听到这一点。所以基本上你把findbyiandremove()
和findOneAndRemove()混淆了
,对吗?您也遗漏了选项
参数?但它是可选的。为什么最后会有括号?请您将这些添加到您的答案中,使其更清楚。不管怎样,我都会这样做。谢谢!我试图在示例中解释,但它认为您的答案非常简单complete@mark5我为我们感到高兴。你的问题是正确的,而且是国际性的我也是。我也学到了很多。你是我的得票人。