【问题标题】:Custom validation of mongoose's Schema paramsmongoose Schema 参数的自定义验证
【发布时间】:2014-05-29 19:40:51
【问题描述】:

拥有对象的下一个参数:

var mongoose = require (PATH);
var Schema = mongoose.Schema;
var schema - new Schema ({

barcode:{
type:number,
required:true,
unique:true

},...});

我想验证“条形码”,它不会少于且不超过 14 个字符;

为此,我编写了以下代码:

schema.path('barcode').validate(function(barcode){
return barcode.length == 13;
}, 'sorry, the error occurred, be careful while typing, 14 characters only!");

exports.Item = mongoose.model('Item', schema);

但是当我将这个模式实现到具体对象时,这个验证不会起到任何作用。我的意思是,我可以输入任意长度的数字并且不会发生任何错误!

【问题讨论】:

    标签: validation mongoose schema


    【解决方案1】:

    结帐mongoose-validator。它与mongoose 集成以支持自定义验证。你可以像这样使用它。

    var validate = require('mongoose-validator').validate;
    
    var BarcodeSchema = new Schema({
     code: {
        type: String,
        required: true,
        unique: true,
        validate: validate('len', 13)
     }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-19
      • 2017-09-10
      • 1970-01-01
      • 2016-04-07
      • 2018-06-11
      • 2014-04-06
      相关资源
      最近更新 更多