sql >> データベース >  >> NoSQL >> MongoDB

マングースで配列とその要素を同時に検証する方法

    カスタムバリデーター を使用できます これをする。アレイ自体が空でないことを確認するだけです:

    var mongoose = require('mongoose'),
        Schema = mongoose.Schema;
    
    mongoose.connect('mongodb://localhost/test');
    
    var bookSchema = new Schema({
    
      1: { type: String, required: true },
      2: String,
      3: String,
      c: String,
      p: String,
      r: String
    });
    
    var dictSchema = new Schema({
      books: [bookSchema]
    });
    
    dictSchema.path('books').validate(function(value) {
      return value.length;
    },"'books' cannot be an empty array");
    
    var Dictionary = mongoose.model( 'Dictionary', dictSchema );
    
    
    var dict = new Dictionary({ "books": [] });
    
    
    dict.save(function(err,doc) {
      if (err) throw err;
    
      console.log(doc);
    
    });
    

    これは、配列にコンテンツがない場合にエラーをスローし、そうでない場合は、配列のフィールドに提供されたルールの検証をパスします。




    1. HDFSチュートリアル–初心者向けのHDFSの完全な紹介

    2. MongoDbクエリとsystem.linq

    3. LaravelRedisの構成

    4. mongodbでサブアレイ値を抽出します