![](/img/trans.png)
[英]MongooseError('Model.find() no longer accepts a callback');
[英]MongooseError: Model.findOneAndUpdate() no longer accepts a callback
我在设置 mongoose 时遇到了问题。
我的代码
export const getOne = (req, res) => {
try {
const postId = req.params.id
PostModel.findOneAndUpdate(
{
_id: postId,
},
{
$inc: { viewsCount: 1 },
},
{
returnDocument: 'after',
},
(err, doc) => {
if (err) {
console.log(error)
return res.status(500).json({ message: "cant return post" })
}
if (!doc) {
return res.status(404).json({
message: "post not found"
})
}
res.json(doc)
},
)
} catch (error) {
console.log(error)
res.status(500).json({ message: "cant retunr post" })
}
}
错误:
MongooseError: Model.findOneAndUpdate() 不再接受回调 Function.Model.findOneAndUpdate (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\mongoose\lib\model.js:2398:11) at getOne (file :///C:/Users/Kous/Desktop/First-Full-Stack/controllers/PostController.js:40:13) 在 Layer.handle [as handle_request] (C:\Users\Kous\Desktop\First-Full -Stack\node_modules\express\lib\router\layer.js:95:5) 在下一个 (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\route.js:144 :13) 在 Route.dispatch (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\route.js:114:3) 在 Layer.handle [as handle_request] (C: \Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\layer.js:95:5) 在 C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib \router\index.js:284:15 在参数 (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\index.js:365:14) 在参数 (C:\ Users\Kous\Desktop\First-Full-Stack\node_modules\express\lib\router\index.js:376:14) 在 Function.process_params (C:\Users\Kous\Desktop\First-Full-Stack\node_modules\表达\lib\router\index.js:421:3)
export const getOne = async (req, res) => {
try {
const postId = req.params.id;
PostModel.findOneAndUpdate(
{
_id: postId,
},
{
$inc: { viewsCount: 1 },
},
{
returnDocument: "after",
}
).then((doc, err) => {
if (err) {
console.log(err);
return res.status(500).json({
message: "Failed to return the post",
});
}
if (!doc) {
return res.status(404).json({
message: "Post not found",
});
}
res.json(doc);
});
} catch (err) {
console.log(err);
res.status(500).json({
message: "Error",
});
}
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.