Mongoose 默认参数 修饰符

默认参数

  • const mongoose = require('mongoose')
    
    // eggadmin 用户名
    // 123456 密码
    // 127.0.0.1:27017 服务器及端口
    // eggcms 数据库
    mongoose.connect('mongodb://eggadmin:123456@127.0.0.1:27017/eggcms', function (err, data) {
      if (err) {
        console.log(err, '数据库连接成功')
        return;
      }
      console.log('数据库连接成功')
    })
    
    // 定义Schema技术文档
    const UserSchema = mongoose.Schema({
      name: String,
      age: Number,
      status: {
        type: Number,
        default: 1, // 默认参数
      }
    })

     

预定义模式修饰符

  • const UserSchema = mongoose.Schema({
      name: {
        type: String,
        trim: true, // 定义 mongoose 修饰符去掉字符串首尾空格
      },
      age: Number,
      status: {
        type: Number,
        default: 1
      }
    })

     

自定义修饰符  Setters 

  • const UserSchema = mongoose.Schema({
      name: {
        type: String,
        trim: true, // 定义 mongoose 修饰符去掉字符串首尾空格
      },
      age: {
        type: Number,
        set(params) { // 使用 Setters 修改符增加数据的时候对 age 进行加工后再存储
          return params < 18 ? 18 : params // 返回的数据就是age在文档中实际保存的值
        }
      },
      status: {
        type: Number,
        default: 1
      }
    })

    使新增的文档中 age 字段小于 18 时强制取值为 18 

 

posted @ 2022-06-02 21:09  霸哥yyds  阅读(30)  评论(0编辑  收藏  举报