我正在做一个简单的Mongoose.Model实例find(),它返回一个来自员工集合的随机文档。问题是,我似乎无法获得它的ID。当我用MongoLab看到文档内容时,我得到以下内容:
{
"_id": {
"$oid": "554cef2fb6bb56cc421dd47c"
},
"name": "Bill Gates",
"role": "Software Engineer Associate",
"age": 21,
"hardware": [],
"__v": 0
}
但是,当我尝试使用employee._doc._id之类的员工实例上的命令获取ID时,我得到以下内容:
Object {_bsontype: "ObjectID", id: "ULï/¶»VÌBÔ|"}
发生了什么事?我调试了我的代码并试图找到_id属性,但它无处可寻。
答案 0 :(得分:0)
您可能应该在问题中包含更多代码段,以便更容易识别您的缺陷所在,但以下是您的代码应该外观的示例。
您的模型应该从架构中导出:
var Employee = Storage.model('Employee', EmployeeSchema);
您的查询应该如下所示:
Employee.findOne(<--your query here-->).exec(function(err, employee) {
if (err) {
//always handle errors here :)
}
if (employee) {
//You can access the objectId of the employee like
console.log(employee._id);
}
});