Mongodb使用时用_id作为检索条件的一个问题

开发的时候需要用_id来作为条件检索,遇到一个语法报错

修改前报错的代码的代码:

1 app.users.findOne({ _id: { $oid: req.session.loggedIn } }, function (err, doc) {

修改后的代码如下

1 app.users.findOne({ _id: objectID(req.session.loggedIn) }, function (err, doc) {

在《了不起的nodejs》里,用到了一个$oid的修饰符,估计还是mongodb版本的问题,运行时编译器报错

对Mongodb的api不熟,所以只能在百度里翻

还真的发现一年前就有人出过错,

现在的mongodb对象里在使用_id做条件检索时需要用到一个ObjectID的方法包一下

里面的id应该为字符串格式

这样就可以作为条件用来检索了

看来我的学习方法有问题,有时间还是要好好看看API

原文地址:https://www.cnblogs.com/qianyuqianxun/p/5113401.html