nest js - как определить несколько типов для поля в mongodb mon goose со свойствами класса в nest - PullRequest
1 голос
/ 01 августа 2020

взгляните на этот код:

@prop({
    required: true,
    autopopulate: true,
    ref: Fund || Project,
  })
  organization: Ref<Fund> | Ref<Project>;



тип свойства «организация» может быть Fund или Project.
в этом примере, когда тип - «Фонд», я получаю объект. но когда тип - «Проект», я получаю null.
Я не очень хорошо знаю гнездо, и я начинаю в гнезде. Я начал использовать его совсем недавно.
как я могу решить эту проблему ??
спасибо.

1 Ответ

0 голосов
/ 02 августа 2020

Для этого вам нужны два поля, первое - это ссылка на модель, к которой относится поле, а второе - это объект, который вы сохранили.

Примечание : на имени в enum,

Class Person {
   @prop({required: true, enum: 'Fund' | 'Project'})
   which: string;

   @prop({refPath: "which"})
   organization: Ref<Fund | Project>;
}

Для справки просто проверьте это mon goose официальные документы

...