mongoose里面为什么定义了methods方法之后不能用entity调用呢~ ~
发布于 11 年前 作者 TianNiu 5603 次预览 最后一次回复是 11 年前 来自
//user.js var mongodb = require(’…/config/mongodb’); var Schema = mongodb.mongoose.Schema; var ObjectId = Schema.ObjectId; var UserSchema = new Schema({ id : ObjectId, name : String, email : String }); UserSchema.methods.findOneByName = function(name, callback) { this.findOne({name : name}, callback); }; module.exports = mongodb.mongoose.model(‘users’, UserSchema);
//index.js var UserModel = require("./user"); var new_user_entity=new UserModel({}); //here 这里怎么不能用这个方法呢~ ~是不是定义错了啊,求救!0.0 new_user_entity.findOneByName(“zhangsan”,function(err,doc){ if(err){ … }else{ … } });
4 回复
有错误信息?
这个方法应该定义在
statics里如果要定义实例方法应该这样:
可是 var new_user_entity=new UserModel({});//这个不就是创建了实例的么0.0,然后调实例methods方法的 这两种方法适应场合是什么呢。。。
并不觉得你这样写有什么错啊,给错误信息看看?