一、mongoose预定义修饰符
lowercase,uppercase,trim
mongoose预定义模式修饰符,可以对我们增加的数据进行一些格式化
var UserSchema = new mongoose.Schema({name:{type: String,//会对增加的字段,左右去空格trim:true},age:Number,status:{type: Number,default:1}})
二、Getters与Setters自定义修饰符
通过set(建议使用)修饰符在增加数据的时候对数据进行格式化。也可以通过get(不建议使用)在实例获取数据的时候对数据进行格式化。
const mongoose = require('./db');const FocusSchema = new mongoose.Schema({title:{type: String,trim:true},pic:String,redirect:{type: String,set(params){//增加数据的时候对redirect字段进行处理if(!params.startsWith('http://')){return 'http://'+params}}}})module.exports = mongoose.model("Focus",FocusSchema,"focus")
set方法对redirect的值进行判断,如果不包含 http:// ,则加上 http://
const FocusModel = require('./model/focus');var focus = new FocusModel({title:"美女人",pic:"www.baidu.com",redirect:"www.xxx.com"})focus.save()
将此数据在数据库保存为
{ "_id":"5cdd0ed1a08cfc3844035bcf","status":1,"title":"美女人","pic":"www.baidu.com","redirect":"http://www.xxx.com"}
