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

キャッチされないエラー:修飾子オプションがtrueの場合、検証オブジェクトには少なくとも1つの演算子が必要です

    このスキーマを試してください

    Schema.User = new SimpleSchema({
      email: {
        type: Object
      },
      'email.address': {
        type: String,
        optional: true
      },
      "email.verified": {
        type: Boolean,
        optional: true
      },
      profile: {
        type: Schema.UserProfile,
        optional: true
      },
      createdAt: {
        type: Date,
        autoValue: function() {
          if (this.isInsert) {
            return new Date();
          } else if (this.isUpsert) {
            return {$setOnInsert: new Date()};
          } else {
            this.unset();
          }
        }
      }
    });
    

    ところで、account-passwordを使用している場合、このスキーマは機能しません。そのパッケージは、電子メールが特定の方法で保存されることを想定しているためです。




    1. mongodbでaggregrateを使用して$match_idにする方法

    2. サブクエリを使用したMongoDB$in

    3. MongodbホットフィックスKB2731284

    4. MongoDBの同じフィールドの複数のドキュメントに条件を適用する