![](/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.