Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Mongoose 数据校验

Mongoose 数据校验

作者头像
越陌度阡
发布于 2020-11-26 04:33:26
发布于 2020-11-26 04:33:26
1.1K00
代码可运行
举报
运行总次数:0
代码可运行

Mongoose为了保证数据库数据的一致性,提供了对数据校验的功能,常用的校验有以下这些:

1. required

必须传入,用于任意类型

2. max

最大值,用于 Number 类型数据

3. min

最小值, 用于 Number 类型数据

4. enum

枚举类型,要求数据必须满足枚举值 enum: ['0', '1', '2'],用于 String 类型

5. match

匹配正则,要求增加的数据必须匹配正则表达式,用于 String 类型

6. maxlength

最大长度,输入字符的长度不能超过该长度,用于 String 类型

7. minlength

最小长度,输入的字符的长度最小长度,用于 String 类型

8. validate

自定义校验,用特定的方法来约束数据,用于任意类型

以下是使用实例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 引入自定义的连接数据库的文件
var mongoose = require('./db.js');
var UserSchema = mongoose.Schema({
    name: {
        type: String,
        trim: true,
        // 必须传入       
        required: true
    },
    sn: {
        type: String,
        index: true,
        // 最大长度
        maxlength: 20,
        // 最小长度
        minlength: 10,
        // 正则匹配
        match: /^sn(.*)/,
        // 自定义校验
        validate: function (sn) {
            return sn.length >= 10;
        }

    },
    phone:{ 
        type:Number, 
        // 正则匹配
        match: /^\d{11}$/ 
    },
    age: {
        type: Number,
        // 最小值
        min: 0,
        // 最大值
        max: 150
    },
    status: {
        type: String,
        default: 'success',
        // 值的枚举范围
        enum: ['success', 'error']
    }
})
module.exports = mongoose.model('User', UserSchema, 'user');
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/03/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用Mongoose的populate方法实现多表关联查询
MongoDB在3.2以上的版本有类似于 join 的 $lookup 聚合操作符,其实 Mongoose 有一个更强大的替代方法,叫做populate ( ),它允许你在其他集合中引用文档,实现更简洁优雅的查询操作。
越陌度阡
2020/11/26
3.9K0
使用Mongoose的populate方法实现多表关联查询
aysnc-validator
aysnc-validator是对async-validate的二次封装库,用于对象值的校验。
copy_left
2022/04/02
3250
MongoDB数据库基本操作
安装 mongodb MongoDBcompass 配置mongoose npm install mongoose node 连接数据库 const mongoose = require('mongoose');<br/> mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true })<br/> .then( () => console.log('数据库连接成功'))<br/> .catch( err
用户3461357
2019/08/20
4.6K0
mongoose验证
enum: [‘html’, ‘css’, ‘javascript’, ‘node.js’]
Qwe7
2022/05/23
2.6K0
python接口自动化34-json校验神器jsonschema
前面一篇讲到json解析神器jsonpath, jsonpath是为了方便快速取值,如果我们要校验json的字段类型和格式,就不是那边方便了。 比如当接口返回一个token,这个token值不是固定的,就算取到了也不好断言,这时候我们希望断言的是token的类型是字符串,长度是固定多少位。
上海-悠悠
2020/07/07
2.3K0
​eggjs实战
swagger会扫描配置的API文档格式自动生成一份json数据,而swagger官方也提供了ui来做通常的展示,当然也支持自定义ui的。不过对后端开发者来说,能用就可以了,官方就可以了。
一粒小麦
2019/07/26
3.2K0
​eggjs实战
深入理解Struts2----数据校验
     在表现层的数据处理方面主要分为两种类型,一种是类型转换,这点我们上篇已经简单介绍过,另外一种则是我们本篇文章将要介绍的:数据校验。对于我们的web应用,我们经常需要和用户进行交互收集用户信息
Single
2018/01/04
8360
深入理解Struts2----数据校验
Struts2 类型转换和数据校验
Struts 2提供了功能强大的类型转换器来处理表现层数据,开发者可以利用Struts 2的类型转换机制来完成任意的类型转换。在应用开发中,对用户的输入进行校验是经常遇到的业务,Struts 2提供了多种方式供开发者对客户输入的数据进行校验,非常得方便灵活。
张哥编程
2024/12/17
1250
Struts2  类型转换和数据校验
Mongoose模块化实践
Mongoose为操作MongoDB数据库提供了很大的方便,在实际开发过程中,为了保证可扩展与可维护性,通常会将Mongoose进行模块化,下面记录一个模块化的实例,便于在以后的项目中复用。
越陌度阡
2020/11/26
1.1K0
前后端演示SHA1,MD5加密登录(带数据库)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/j_bleach/article/details/74131038
j_bleach
2019/07/02
1.3K0
前后端演示SHA1,MD5加密登录(带数据库)
JsonSchmea用法
JSON Schema是基于JSON格式,用于定义JSON数据结构以及校验JSON数据内容。JSON Schema官网地址:http://json-schema.org/
趣学程序-shaofeer
2019/12/27
1.4K0
MongoDB增删改查操作
创建集合分为两步,-是对对集合设定规则,二是创建集合,创建mongoose.Schema构造函数的实例即可创建集合。
清出于兰
2022/01/05
6.5K0
MongoDB增删改查操作
MongoDB增删改查操作
创建集合分为两步,一是对对集合设定规则,二是创建集合,创建mongoose.Schema构造函数的实例即可创建集合。
梨涡浅笑
2020/10/30
20.2K0
MongoDB增删改查操作
Nodejs学习笔记(十四)— Mongoose介绍和入门
简介   Mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具   那么要使用它,首先你得装上node.js和mongodb,关于mongodb的安装和操作介绍可以参考:http://www.cnblogs.com/zhongweiv/p/node_mongodb.html   Github地址:https://github.com/Automattic/mongoose   API Docs:http://mongoosejs.com/docs/guide.html   
Porschev
2018/03/28
3K0
Nodejs学习笔记(十四)— Mongoose介绍和入门
【Ajv】JSON Schema Validator
     JSON Schema是一份用来注释和验证JSON文档开源草案,通过JSON Schema可以描述现有的数据格式,可以完成数据的自动化测试,可以有效保障数据提交的质量。
前端小鑫同学
2022/12/26
2.2K0
【Ajv】JSON Schema Validator
Mongoose多表查询运用实例
在开发内容管理系统时,经常会用到多表关联查询场景,如文章分类、文章详情、文章作者三张表,UML图如下:
越陌度阡
2020/11/26
1.8K0
Mongoose多表查询运用实例
Mongoose中的修饰符
Mongoose提供了修饰符功能用于对存取的数据进行一些加工,常用的修饰符有以几下几种:
越陌度阡
2020/11/26
1.3K0
struts2的验证
这种验证方式,它本质上就是在原来的Action类中覆写validate()或添加validateXxx()方法,就可以了。
HUC思梦
2020/09/03
7420
Mongoose索引、内置方法、静态方法与实例方法
索引是对数据库表中一列或多列的值进行排序的一种结构,可以让我们查询数据库变得更快,MongoDB 的索引几乎与传统的关系型数据库一模一样,这其中也包括一些基本的查询优化技巧。
越陌度阡
2020/11/26
2.5K0
jquery校验规则的使用
<!--[endif]--> 默认校验规则 (1)required:true 必输字段 (2)remote:"check.php" 使用ajax方法调用check.php验证输入值 (3)email:true 必须输入正确格式的电子邮件 (4)url:true 必须输入正确格式的网址 (5)date:true 必须输入正确格式的日期 (6)d
西门呀在吹雪
2020/11/09
5.2K0
相关推荐
使用Mongoose的populate方法实现多表关联查询
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验