如何在 Mongoose Schema 中要求嵌套的 json 对象

Gia*_*nis 5 mongoose node.js express

我有以下猫鼬模式:

const productSchema = new mongoose.Schema({
  name: {
    type: String,
    required: true,
    minlength: 1,
    maxlength: 255
  },
  extraData: {
    brand: {
      type: String,
      required: true,
      minlength: 1,
      maxlength: 255
    },
    quantity: {
      type: Number,
      required: true,
      minlength: 1,
      maxlength: 10
    },
   required: true
  }
});
Run Code Online (Sandbox Code Playgroud)

但是,当我执行它时,我收到以下错误:“TypeError: Invalid schema configuration: Trueis not a valid type at path extraData.required”。我如何需要额外数据?

dim*_*nes 7

更新: 您可以使用子文档apporach

const extraDataSchema = new mongoose.Schema({
  brand: {
    type: String,
    required: true,
    minlength: 1,
    maxlength: 255
  },
  quantity: {
    type: Number,
    required: true,
    minlength: 1,
    maxlength: 10
  }
});

const productSchema = new mongoose.Schema({
  name: {
    type: String,
    required: true,
    minlength: 1,
    maxlength: 255
  },
  extraData: {
    type: extraDataSchema, required: true
  }
});
Run Code Online (Sandbox Code Playgroud)