预定义修饰符
lowercase
、uppercase
、trim
mongoose 提供的预定义模式修饰符,可以对我们增加的数据进行一些格式化。
var UserSchema=mongoose.Schema({
name:{
type:String, //类型为String
trim:true //省略字段中的空格
},
like:{
type:String, //类型为String
uppercase:true //将字段中英文自动转换为大写
},
status:{
type:Number, //类型为String
default:1 //默认值为1
}
})
Mongoose Getters 与 Setters 自定义修饰符
除了 mongoose 内置的修饰符以外,我们还可以通过 set
(建议使用) 修饰符在增加数据的 时候对数据进行格式化。也可以通过 get
(不建议使用)在实例获取数据的时候对数据进行格式化。
var NewsSchema=mongoose.Schema({
title:"string",
author:String,
pic:String,
redirect:{
type:String,
set(url){ //url这个参数为该字段的值,通过下面的语句可以对其进行相应的处理
if(!url) return url;
if(url.indexOf('http://')!=0 && url.indexOf('https://')!=0){
url = 'http://' + url;
}
return url;
}
//get方法不建议使用
get: function(url){
if(!url) return url;
if(url.indexOf('http://')!=0 && url.indexOf('https://')!=0){
url = 'http://' + url;
}
return url;
}
},
content:String,
status:{
type:Number,
default:1
}
})