MongoDB学习(黑马教程)-5-数据库MongoDB的验证

在创建集合规则的时候呢,我们可以设置当前字段的验证规则,验证失败就输入插入失败

const userSchema = new mongoose.Schema({
	name:String,
})

之前我们的规则是这样写的,现在为了设置验证规则,将规则放入对象中。

一,常见的验证规则

const userSchema = new mongoose.Schema({
	name:{
		type:String,
		require:[true,'请输入名字'],  //name 这个属性是必填属性,不可为空
		minlength:[2,'字符串长度不能小于2'], //name的属性值最小长度为2
		minlength:[7,'字符串度不能小于2'],  //name的属性值最大长度为2
		trim:true            //会自动把子符串两边的空格清除掉   
	}
})

二,针对数值型的验证规则:min,max

age:{
		type:Number,
		min:20,   //数值型最小是20
		max:60,   //数值型最大是60
		default:40    //如果不传入数值,则显示默认值40
	}

三,有时可以用数组枚举的方式限制传入的数据

category:{
		type:String,
		enum:['html','css','js','node']
	}
category:{
		type:String,
		enum:{
			value:['html','css','js','node'],
			message:'分类名称要在一定的范围内'
		 }
	},

四,可以自定义验证规则利用validate属性

author:{
		type:String,
		validate:{
			validator: v=>{
				//返回布尔值
				//true验证成功
				//false验证失败
				//v 要验证的值
				return v && v.length >4  //有传入值,且长度大于4才返回true
			},
			//自定义错误信息
			message:'传入的值不符合检测规则'
		}
	}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值