## **1、Mongoose 校驗參數**
required : 表示這個數據必須傳入
max: 用于 Number 類型數據,最大值
min: 用于 Number 類型數據,最小值
enum:枚舉類型,要求數據必須滿足枚舉值 enum: ['0', '1', '2']
match:增加的數據必須符合match(正則)的規則
maxlength:最大值
minlength:最小值
```
var UserSchema = new mongoose.Schema({
name:{
type:String,
required: true,
},
age: {
type: Number,
// 是否必須的校驗器
required: true,
// 數字類型的最大值校驗器
max: 120,
// 數字類型的最小值校驗器
min: 0
},
status: {
type: String,
// 設置字符串的可選值
enum: ['0', '1', '2']
},
phone:{
type:Number,
match: /^\d{11}$/
},
desc: {
type: String,
maxlength:20,
minlength:10
}
});
```
## **2、Mongoose 自定義的驗證器**
在缺省情況下創建的索引均不是唯一索引。下面的示例將創建唯一索引,如:
```
var UserSchema = new mongoose.Schema({
name:{
type:String,
required: true,
},
age: {
type: Number,
// 是否必須的校驗器
required: true,
// 數字類型的最大值校驗器
max: 120,
// 數字類型的最小值校驗器
min: 0
},
status: {
type: String,
// 設置字符串的可選值
enum: ['0', '1', '2']
},
phone:{
type:Number,
match: /^\d{11}$/
},
desc: {
type: String,
// 自定義的驗證器,如果通過驗證返回 true,沒有通過則返回 false
validate: function(desc) {
return desc.length >= 10;
}
}
});
```
- 前言
- 一、MongoDb 數據庫介紹、安裝、使用
- 二、MongoDB 數據庫創建刪除、表(集合) 創建刪除、數據增刪改查
- 三、MongoDB 索引 和 explain 的使用
- 四、Nodejs 操作 MongoDb 數據庫
- 五、關系型數據庫表(集合)與表(集合)之 間的幾種關系
- 六、MongoDB 的高級查詢 aggregate 聚合管道
- 七、mongoose 入門以及 mongoose 實現數據 的增、刪、改、查
- 八、Mongoose 預定義模式修飾符 Getters 與 Setters 自定義修飾符
- 九、Mongoose 索引、Mongoose 內置 CURD 方 法、擴展 Mongoose Model 的靜態方法和 實例方法
- 十、Mongoose 數據校驗
- 十一、Mongoose 中使用 aggregate 聚合管道
- 十二、Mongoose 中使用 populate 實現關聯查詢
- 十三、MongoDb 數據庫的導出導入