MongoDB-修饰符

mongoose 预定义模式修饰符

  • lowercase uppercase trim

    • mongoose提供的预定义模式修饰符,可以让我们对数据进行一些格式化
    const UserSchema = mongoose.Schema({
        name: {
            type: String,
            // 去除name字段首尾空格
            trim: true
        },
        age: Number,
        status: {
            type: Number,
            default: 1,
        },
    })
    

mongoose Getters 与 Setters 自定义修饰符

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

    const SetSchema = mongoose.Schema({
        name: {
            type: String,
            // 去除name字段首尾空格
            trim: true,
            // 增加数据的时候对 name 字段进行处理
            set(params) {
                // params 可以获取 name 的值 返回的数据就是 name 在数据库实际保存的值
                if (!params) {
                    return params
                }
                if (params.indexOf('http://') !== 0 && params.indexOf('https://') !== 0) {
                    return `http://${params}`
                }
                return params
            },
    
        },
        age: Number,
        status: {
            type: Number,
            default: 1,
        },
    })
    
    
    let user = new UserModel({
        name: '张三',
        age: 18
    })
    
  • get 不建议使用(原因自查)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值