当我使用mongoDB
本机驱动程序在我的NodeJS
应用程序中进行交互时,我很惊讶在特定集合中看到的记录很少。以下是我的find()
查询的输出。
{
"_id" : ObjectId("5aa14080f375c27bb8378076"),
"first_name" : "Smith",
"last_name" : "James",
"email" : "Smith.James@gmail.com",
"gender" : "Male",
"hobbies" : {
"indoor_games" : true,
"outdoor_games" : true,
"other" : false
},
"profession" : "Employee",
"notifications" : true
}
{
"_id" : "5aa14034394a267adb8e42f7", --> here without ObjectId
"first_name" : "Davis",
"last_name" : "John",
"email" : "Davis.John@gmail.com",
"gender" : "Male",
"hobbies" : {
"indoor_games" : true,
"outdoor_games" : true,
"other" : false
},
"profession" : "Employee",
"notifications" : true
}
我知道_id
本身是由mongo
生成的,但由于记录很少,为什么没有ObjectId
而只存在字母数字字符串?这背后有什么理由吗?使用mongoDB
的{{1}}本机驱动程序包保存所有记录。
答案 0 :(得分:1)
只有在您有意或手动插入objectId时才会发生这种情况。在保存/插入时,MongoDB创建它" _id" as ObjectId本身。