提问者:小点点

将模型“category”的路径“_id”处的值“some_id”强制转换为ObjectId失败


当我使用mongoose 5.9.12版本中的findOne时,我遇到了如下错误:error https://I.stack.imgur.com/8kacy.png

我的代码:[代码][2]

https://i.stack.imgur.com/v8prd.png

我的模型:模型


共1个答案

匿名用户

来自猫鼬文档:

如果要按文档的_id进行查询,请使用findById()而不是findOne()。

在发送命令之前,根据模式强制转换id。

因此,建议的方法是:

Category.findById(categoryId)

如果确实要在筛选器中使用findone并指定_id,则可以使用

Category.findOne( { _id: mongoose.Types.ObjectId(categoryId) })

objectId

编辑:实际问题是您的categoryID包含导致此问题的尾随空格:“5F05445A9789663D08FB12D2”-它应该是“5F05445A9789663D08FB12D2”