var animalSchema = new Schema({ name: String, type: String });
animalSchema.methods.findSimilarTypes = function (cb) {
return this.model('Animal').find({ type: this.type }, cb);
}
var Animal = mongoose.model('Animal', animalSchema);
var dog = new Animal({ type: 'dog' });
dog.findSimilarTypes(function (err, dogs) {
console.log(dogs);
});
以下代码中this
实例在this.model('Animal')
和this.type
中的含义是什么?
答案 0 :(得分:1)
在像findSimilarTypes
这样的实例方法中,this
是数据库中文档的模型实例。
因此this.model('Animal')
正在查找Animal
模型,this.type
是调用type
时使用的模型实例的findSimilarTypes
属性。