多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## **1、mongoose 预定义模式修饰符** lowercase、uppercase 、trim mongoose 提供的预定义模式修饰符,可以对我们增加的数据进行一些格式化。 ``` var UserSchema=mongoose.Schema({ name:{ type:String, trim:true }, age:Number, status:{ type:Number, default:1 } }) ``` ## **2、Mongoose Getters 与 Setters 自定义修饰符** 除了 mongoose 内置的修饰符以外,我们还可以通过 **set**(建议使用) 修饰符在增加数据的 时候对数据进行格式化。也可以通过 **get**(不建议使用)在实例获取数据的时候对数据进行格式化。 ``` var NewsSchema=mongoose.Schema({ title:"string", author:String, pic:String, redirect:{ type:String, set(url){ if(!url) return url; if(url.indexOf('http://')!=0 && url.indexOf('https://')!=0){ url = 'http://' + url; } return url; } }, content:String, status:{ type:Number, default:1 } }) ``` ``` var NewsSchema=mongoose.Schema({ title:"string", author:String, pic:String, redirect:{ type:String, set(url){ if(!url) return url; if(url.indexOf('http://')!=0 && url.indexOf('https://')!=0){ url = 'http://' + url; } return url; }, get: function(url){ if(!url) return url; if(url.indexOf('http://')!=0 && url.indexOf('https://')!=0){ url = 'http://' + url; } return url; } }, content:String, status:{ type:Number, default:1 } }) ```