MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Xác thực đối tượng dựa trên lược đồ Mongoose mà không cần lưu dưới dạng tài liệu mới

Có một cách để làm điều đó thông qua Custom validators . Khi xác thực không thành công, không thể lưu tài liệu vào DB.

var peopleSchema = new mongoose.Schema({
        name: String,
        age: Number
    });
var People = mongoose.model('People', peopleSchema);

peopleSchema.path('name').validate(function(n) {
    return !!n && n.length >= 3 && n.length < 25;
}, 'Invalid Name');

function savePeople() {
    var p = new People({
        name: 'you',
        age: 3
    });

    p.save(function(err){
        if (err) {
             console.log(err);           
         }
        else
            console.log('save people successfully.');
    });
}

Hoặc một cách khác để làm điều đó thông qua validate() với cùng một lược đồ như bạn đã xác định.

var p = new People({
    name: 'you',
    age: 3
});

p.validate(function(err) {
    if (err)
        console.log(err);
    else
        console.log('pass validate');
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb java api:WriteResult # getN ()

  2. Groupby trong MongoTemplate trả về các trường trống

  3. Lệnh MongoDB dropIndexes

  4. Quản lý viết nhật ký trong MongoDB

  5. Cách tìm kiếm dữ liệu được phân tách bằng dấu phẩy trong mongodb