我使用Mongoose定义了一个实例方法,用于认证一个代表(用户):
在我的应用程序中,我找到了
然而,我遇到了这个错误:
我使用Mongoose定义了一个实例方法,用于认证一个代表(用户):
RepSchema.methods.authenticate = function(password){
return this.encryptPassword(password) === this.hashed_password;
};
在我的应用程序中,我找到了
rep
并调用了其authenticate
方法:var mongoose = require("mongoose");
var Rep = mongoose.model("Rep");
Rep.findOne({email: email}, function(err, rep){
if (rep.authenticate(req.body.session.password)){
req.session.rep_id = rep._id;
res.redirect('/calls', {});
}
});
然而,我遇到了这个错误:
TypeError: Object { email: 'meltzerj@wharton.upenn.edu',
password: XXXXXXXXX,
name: 'meltz',
_id: 4fbc6fcb2777fa0272000003,
created_at: Wed, 23 May 2012 05:04:11 GMT,
confirmed: false,
company_head: false } has no method 'authenticate'
我做错了什么?
rep = new Rep();
实例化一个全新的对象,当我调用authenticate
时它仍然会抛出相同的错误。 - user730569