mongoose - 为什么findOne会返回mongoose Model对象,但却找不到?

时间:2013-02-01 16:17:23

标签: node.js mongodb mongoose

为什么当我使用mongoose findOne方法时,它在回调中返回的对象是一个有效的mongoose Model对象(意思是我可以在其上调用mongoose模型助手方法,如{{1}对于子文档或id删除它),当我调用mongoose remove方法时,我只是回到表示我正在寻找的文档的javascript对象?

1 个答案:

答案 0 :(得分:3)

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
  })
})