MongoDB / пн goose | Расширение функциональности схемы - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь дать схеме несколько настраиваемых полей, описывающих ее поведение. Я хочу использовать его для некоторой аутентификации, задав минимальный «уровень», что кому-то нужно, чтобы прочитать его значение. План состоит в том, чтобы объявить это так же, как сделать обязательное поле, поэтому я бы написал «minAuth: someLevel» в объявлении поля.

Я уже пробовал это, и это не дает ошибки, но я не могу действительно найти значение где угодно.

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

1 Ответ

0 голосов
/ 03 марта 2020

Итак, если ваша схема выглядит примерно так:

YourSchema = new mongoose.Schema({
  name: {type: 'String', minLevel: 1}
})
module.exports = mongoose.model('You', YourSchema);

Затем вы можете импортировать ее и использовать переменные схемы, такие как

const You = require("/path/to/schema/you")
// Get all fields from the schema
let path = You.schema.paths
  for ( const [index, PropertyName] of path) {
    const PropertyDescription = schema.paths[index]
    let Level = PropertyDescription.options.minLevel
  }


// Or you can go directly to it if you know the index of it

You.schema.paths[TheIndexYouKnow].options.NameOfYourCustomVariable

Надеюсь, это поможет

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