当前位置: 首页 > 知识库问答 >
问题:

对于模型“用户”的路径“\u id”处的值“2”,转换为ObjectId失败

鲜于河
2023-03-14
let { id, email } = req.body;

const findUser = await User.findOne({ email: email })
if (!findUser)
    return res.status(400).json({ message: 'No receiver id has been found' })

const existingContacts = findUser.contacts;
const checkId = obj => obj.id === id;
if (existingContacts.some(checkId))
    return res.status(400).json({ message: "Contact already exist" })

const newContact = await User.findById(id)

const newId = await User.findOneAndUpdate({ email: email }, {
    $push: {
        contacts: {
            id: id,
            name: newContact.firstName
        }
    }
})
res.json(newId)

当我发送后请求我得到以下错误:

对于模型“用户”的路径“\u id”处的值“2”,转换为ObjectId失败

有什么建议吗?

提前感谢!!!

共有1个答案

爱亮
2023-03-14

值2与猫鼬模型不匹配_id

 类似资料:
  • 我的控制器obter_todos_precos只是一个console.log,没有使用任何模型,但我得到以下错误: 为什么我会有这种行为?

  • Comments是嵌套在Post架构中的数组。我想通过推送一个新的评论到评论数组更新相应的帖子。但是得到了错误:CastError:对于模型“post”的路径“_id”处的值“comments”,向ObjectId的强制转换失败 阅读相关帖子 尝试使用“mongoose.types.objectid”,但不起作用 猫鼬版^5.5.4 我在这里使用的所有ID都是有效的 我认为问题出在“comment

  • 我希望有人能帮我找出我在这里做错了什么。我一直在寻找,我可以找到很多类似的问题,但没有一个我足够聪明来解决我的问题。我得到以下错误: CastError:对于模型“customer”的路径“\u id”处的值“customers”,转换为ObjectId失败 它以前是有效的,我设法打破了它,我解开了所有我认为我改变了的东西,我仍然得到了错误。 这是我的模式: 我的路线: 和我的控制器: 此外,以下

  • 我正在用node/express/mongo/mongoose构建一个应用程序。我遇到了一个我似乎无法理解的错误,谷歌搜索到目前为止没有任何帮助。 我创建了一个简单的、以猫为主题的示例来重现我遇到的错误。我基本上是通过ObjectId检索一个对象。我正在使用创建对象时自动生成的对象id(作为字符串)。 当我导航到路径localhost:3000/kitty/586d62878fc14d30e0ac

  • 好吧,我看到这里有一些这样的帖子,但他们没有帮助我。。。 让我描述一下我的问题: 我有两个模式 现在我已经有了一个B对象,我想创建一个a对象。 所以我这样做: b对象是从我的monogDB加载的。调试器为我的b显示了一个有效的ObjectId(53627ed535d9d04416e26218或Sb~Õ5ÙÐDáb)。 但是,当我保存新的A-Object时,会出现错误:“CastError:Cast

  • 我的应用程序可以在本地工作,但在生产中,我似乎无法使用猫鼬从mongo获取特定的东西。我尝试过: