Установите `required` для поля типа объекта в Mongoose - PullRequest
0 голосов
/ 09 февраля 2019

Этот работает нормально:

{
  name: {
    first: { type: String, required: true },
    last: { type: String, required: true }
  }
}

Но этот не работает

{
  name: {
    required: true,
    first: { type: String },
    last: { type: String }
  }
}

Он даже не запустится:

/ Пользователи/albertgao/codes/temp/aaa/node_modules/mongoose/lib/schema.js:751 throw new TypeError (Invalid schema configuration: \ $ {name} `не равно` + ^

TypeError: Неверная конфигурация схемы: True не является допустимым типом в пути name.required.

Как сказать, что я хочу, чтобы name был обязательным без установки каждого из его подполей?

Спасибо

1 Ответ

0 голосов
/ 09 февраля 2019

Проблема заключается в поле: сокращение TYPE, которое не следует смешивать с полями опций, как требуется.Вместо этого я думаю, что вы можете попытаться не использовать сокращения в родительских полях, например:

{
  name: {
    type: { 
       first: String,
       last: String
   },
   required: true
}

или даже более явно:

{
  name: {
    type: { 
       first: { type: String},
       last: { type: String}
   },
   required: true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...