【发布时间】:2014-05-27 13:18:33
【问题描述】:
我正在使用 Node.js 和 Mongoose 检索 Mongo 文档,如下所示:
var app = express();
var Thread = mongoose.model('threads', schema);
app.get('/api/closed/all', function(req, res) {
Thread.find({ IsCLOSED: true }, function(err, post){
res.send(post);
});
});
但它没有返回“_id”字段,我错过了什么?
在文档中它说默认情况下应该包含 _id
谢谢
** 编辑 **
解决方案:我必须在 Schema 中指定它:
var schema = new mongoose.Schema( {_id : String ........ } );
【问题讨论】:
-
你的代码是正确的,你怎么知道_id丢失了。你会迭代响应对象并显示有问题的输出吗?
-
在端点中查看答案时,_id 不存在,所有其他字段都是
-
你是如何创建 _id 的,它手动创建的 ids 还是 mongo 为你创建了 Object ID 的?
-
它是手动创建的
-
我找到了原因,我必须在 Mongoose Schema 中指定它:
var schema = new mongoose.Schema( {_id : String .... } );问候
标签: node.js mongodb express mongoose