mongoose发现和find哪里

我刚刚开始使用MongooseJS,我想知道在这些查询中哪一个是执行find-where查询的最佳方法。 这个查询?

post.Model .findOne({ _id : id, creator : creator }) .remove(function(err, results) { callback(err, results); }); 

或这个查询?

 post.Model .findOne({ creator : creator }) .where('_id') .equals(id) .remove(function(err, results) { callback(err, results); }); 

两者都以我想要的方式工作,但是我觉得我做错了什么,还有更好的方法来做到这一点。 我一直在寻找样本查询,可以帮助我,我发现不同的实现,如做:

 post.Model.findOne({ $where : [ ] }) 

TIA。 我为新问题表示歉意。

如果你已经有文档的_id,那么Model.findById(_id, callback); 是expression该查询的最清晰的方式。 当查询条件可以匹配多个文件时, Model.find(queryConditions, callback); 对链接风格主要是偏好/风格/意见的问题。 我个人的观点是使用查询对象比链接更简单,更直接,我几乎从不喜欢,但它又是一种风格的东西。

在你所有的例子中,因为你有一个独特的_id,所以没有理由也查询creator