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