CastError:对于路径" _id"中的值XXX,Cast to ObjectId失败

时间:2016-07-08 14:36:57

标签: node.js mongodb mongoose mean-stack

我试图在MEAN Stack应用程序中处理计划。当我打电话给findOne时,我收到了这个错误:

<div id="blackcircle">
  <div id="whitecircle"></div>
</div>

这就是我这样做的方式:

CastError: Cast to ObjectId failed for value \"[ '576df16eed10c2fccbcbd60c' ]\" at path \"_id\""

我注意到当我将id作为字符串(如下所示)时,一切正常。

Plan.findOne({_id: planId}, function(err, plan){ //do something });

所以,我安慰了Plan.findOne({_id: '576df16eed10c2fccbcbd60c'}, function(err, plan)

planId

我一直在尝试我在这里找到的东西,但有什么能帮我解决这个问题:/

1 个答案:

答案 0 :(得分:1)

看起来planId是一个数组。

你可以试试planId[0]吗?

Plan.findOne({_id: planId[0]}, function(err, plan){ //do something });

Plan.findOne({_id: new ObjectId(planId[0])}, function(err, plan){ //do something });