zoukankan      html  css  js  c++  java
  • 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   } })
     
    
    
    



     

  • 相关阅读:
    Mybatis之批量更新操作
    Spring Quartz *.QRTZ_LOCKS' doesn't exist
    分析NTFS文件系统得到特定文件的内容
    设计模式笔记——设计模式原则总结
    android自己定义ViewPager之——3D效果应用
    Android混淆代码
    百度地图 Android SDK
    NYOJ17,单调递增最长子序列
    令人纠结的两行代码
    XCode中在提示窗体中对已弃用的API接口画上红线
  • 原文地址:https://www.cnblogs.com/xc-chejj/p/10920539.html
Copyright © 2011-2022 走看看