mongoose – 如何findOne返回mongoose模型对象,但发现不?

当我使用mongoosefindOne方法时,它发现在callback中返回的对象是一个有效的mongoose Model对象(意思是我可以调用它的mongoose模型辅助方法,就像id为子文档或删除它一样) ,当我打电话给mongoosefind方法我只是得到一个JavaScript对象代表我正在寻找的文件?

findOne给你一个单一的mongoose文件,而find给你一个所有匹配的mongoose文件数组,而不是一个游标。

 YourModel.find({ something: true }, function (err, docs) { if (err) return handleErrorSomehow(err) console.log(Array.isArray(docs)) // true docs.forEach(function (doc) { console.log(typeof doc.save) // function }) })