Как правильно построить модель вложенного объекта в мангусте - PullRequest
0 голосов
/ 28 марта 2020

Я пытаюсь определить следующую модель mon goose для случая. Странно, я не вижу надлежащей документации о том, что я пытаюсь сделать. В конце я хочу иметь только 1 коллекцию "Case", документы которой являются вложенными объектами, подобными этому:

const CaseSchema = new Schema({
  clientDataType: {
    type: String,
    required: true,
    enum: [
      'dataSchema1',
      'dataSchema2',
    ],
  },
  clientData: {
    type: "Either dataSchema1 or dataSchema2",
    required: true,
  },
  caseDataType: {
     type: String,
     required: true,
     enum: ['type1', 'type2', ...]
  },
  caseData: {
    type: "One of 6 types of cases again they are schemas",
    required: true,
  }
}, { timestamps: true });

А вот макет для dataSchema1 - то же самое относится к dataSchema2

const dataSchema1 = new Schema({
    field1: {
    type: String,
    required: true,
  },
  fiedl2: {
    type: String,
    required: true,
  },
  field3: {
    type: "One of subschemas of my choice",
    required: true,
  },
  ...
}, { timestamps: true });

Is mon goose способен сделать это, или я должен пропустить mon goose для этого типа модели случая. По сути, в конце я не хочу отправлять этот объект и позволить mon goose проверить его для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...