1.索引
1.增加索引
var UserSchema = mongoose.Schema({
name: {
type: String,
unique: true // 给name字段增加唯一索引
}
age:{
type: Number,
index: true // 给age字段增加普通索引
}
status:Number
})
2.扩展内置方法
1.扩展静态方法
- 静态方法只能被类对象调用
model/user.js
UserSchema.static.findByName = function(name, callback){
// this 关键字获取当前的model
this.find({"name": name}, function(err, docs){
callback(err, docs);
})
}
const UserModel = mongoose.model('User', UserSchema, 'user');
module.exports = UserModel;
app.js
const UserModel = require('./model/user');
// 通过UserModel类调用静态方法findByName
UserModel.findByName("张三", function(err, docs){
if(err){
console.log(err);
return;
}
console.log(docs);
})
2.扩展实例方法(基本不用)
- 实例方法只能被实例化对象调用
UserSchema.methods.print = function(){
// this 指向user对象
console.log(this)
}
const UserModel = mongoose.model('User', UserSchema, 'user');
module.exports = UserModel;
var user = new UserModel({
name: '张飞',
age: 56,
status: 1
});
// 通过实例对象调用实例方法print
user.print()
版权声明:本文为qq_42517220原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。