[英]Validate object with mongoose query
我需要用貓鼬查詢來驗證對象。
例如,我有對象:
const user = {username: 'foo', email: 'foo@mail', type: 2};
和貓鼬查詢
const query = { type: { '$in': [ 2, 1 ] };
所以我需要這樣的東西:
const isValid = validate(user, query); // true
要驗證數據,如果需要指定范圍,可以使用built-in validators
:
var DataSchema = new mongoose.Schema({
username: String,
email: String,
type: {
type: Number,
min: [1, 'Error type must be > 0'],
max: [2, 'Error type must be < 3']
}
});
或custom validators
,如果要檢查數組中的值:
var acceptedTypes = [2, 1];
var DataSchema = new mongoose.Schema({
username: String,
email: String,
type: {
type: Number,
validate: {
validator: function(v) {
for (var i = 0; i < acceptedTypes.length; i++) {
return (acceptedTypes[i] == v);
}
return false;
},
message: '[type] is not an accepted value'
}
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.