如何获取json对象的数组而不是mongoose文档
当我find如下操作时:
Collection.find({name: 'Erik'}, function (err, docs) { // do momething });
'docs'variables填充了全functionmongoose文档的数组。 但是我需要获得一个纯JSON对象的数组。
我知道我可以通过forEach循环访问'docs'数组,并使用.toJSON()方法获取对象。 mongoose支持我感兴趣的function吗?
如果您使用的是Mongoose 3.x,则可以使用lean
查询选项来执行此操作:
Collection.find({name: 'Erik'}).lean().exec(function (err, docs) { // docs are plain javascript objects instead of model instances });
.exec(function(err, docs){ docs= docs.map(o => o.toObject());
这将包括虚拟和获得者