在尝试使用 Mongoose 构造一些静态变量时,我在调用 find() 或 findOne() 时似乎无法访问错误参数。这是我的静态:
User.statics.authenticate = function(login, password, cb){
return this.model('User').findOne({
username: login,
password: password
}, function(err, user){
console.log("error", err);
console.log("user", user);
}).exec(cb);
};
我试图用这样的东西来称呼它:
exports.session = function(req, res){
return User.authenticate(req.body.login, req.body.password, function(err, doc){
console.log('err', err);
console.log('doc', doc);
});
};
在任何情况下,无论 findOne 查询的结果如何,err 始终为空。知道这里发生了什么吗?也许我无法理解所有这些回调......