2017-01-11 93 views
1

這裏是我的架構:貓鼬CastError:投射到的ObjectId失敗值在路徑 「_id」

let mongoose = require('mongoose'); 
let schema = new mongoose.Schema({ 
    type: String, 
    value: String, 
    attributes:[mongoose.Schema.Types.Mixed], 
    created_at: Date, 
    updated_at: Date 
}) 

然後我創建{類型: 'USER_ID',值:1}一個新的集合, 和然後我得到了新的數據與查詢:

{type: 'user_id', value: '1'} 

它是好的,這裏是結果:

"_id" : ObjectId("5874c5dbed927207df177d3b"), 
"type" : "phone", 
"value" : "13811785500", 
"updated_at" : ISODate("2017-01-10T11:30:19.266Z"), 
"created_at" : ISODate("2017-01-10T11:30:19.266Z"), 
"attributes" : [], 

然後,I q uery與collection`s的ObjectId保存集合:

models.findBydId("5874c5dbed927207df177d3b") 

它拋出錯誤:

CastError: Cast to ObjectId failed for value "5875976f8a03b2229c544c50" at path "_id" for model "vertex" 

有誰能夠告訴我什麼`錯了嗎? 謝謝。

回答

0

你應該試試這個 - >

models.find({"_id": ObjectId("5874c5dbed927207df177d3b")}); 
+0

我試過了,但它did't work.still拋出保存錯誤。 –

+0

好吧,我刪除了node_modules文件夾,並再次安裝npm,然後事情順利。 –

+1

應該有貓鼬的問題,版本是4.7.4 –

相關問題