我有一个错误,我不明白它是如何发生的。如果我的路线如下:
我的控制器obter_todos_precos只是一个console.log,未使用任何模型,但是出现以下错误:
"message": "Cast to ObjectId failed for value \"preco\" at path \"_id\" for
model \"ZonaModel\""
通过这样改变路线的顺序,我找到了一个解决方案:
为什么我有这种行为?
最佳答案
路由器匹配它匹配的第一条路由
/:id_zona和/ preco路径与preco
相同的路径也可以是id_zona
的值
因此,当/ preco在上方时,
而当/:id_zona在上面,而您尝试使用/ preco时,路由将匹配到/:id_zona,并且id_zona的值是preco,在您的控制器中希望该对象为ObjectId类型
关于javascript - 在模型的路径“_id”处将值“”转换到ObjectId失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53805141/