MongoDB学习day08--mongoose预定义修饰符和getter、setter修饰符

一、mongoose预定义修饰符

lowercaseuppercase trim

var UserSchema=mongoose.Schema({
  name:{
    type:String,
    trim:true  //去首尾空格
  },
  age:Number,
  status:{
    type:Number,
    default:1
  }
})
trim:true  //去首尾空格
lowercase:true //转化为小写
uppercase:true //转化为大写

二、mongoose getter和setter修饰符
除了 mongoose 内置的修饰符以外, 我们还可以通过 set(建议使用) 修饰符在增加数据的时候对数据进行格式化。 也可以通过 get(不建议使用) 在实例获取数据的时候对数据进行格式化。

setter:
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   } })

getter:

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   } })
 





 

原文地址:https://www.cnblogs.com/xc-chejj/p/10920539.html