Подтвердить что ты не робот

Как создать и использовать Enum в Mongoose

Я пытаюсь создать и использовать тип enum в Mongoose. Я проверил это, но я не получаю правильный результат. Я использую enum в своей схеме мангуста следующим образом:

var RequirementSchema = new mongoose.Schema({
   status: {
        type: String,
        enum : ['NEW', 'STATUS'],
        default: 'NEW'
    },
})

Но я немного запутался, как я могу указать значение enum, как в Java NEW("new"). Как я могу сохранить enum в базе данных в соответствии с перечисляемыми значениями. Я использую его в экспресс-node.js.

4b9b3361

Ответ 1

Здесь перечислены в основном объекты String. Вместо этого измените строку перечисления на enum: ['NEW', 'STATUS']. У вас есть опечатка с вашими кавычками.

Ответ 2

Enums - это объекты String, например: enum :['a','b','c'] или, вероятно, это const listOfEn = ['a','b','c']; => enum: listOfEn

Ответ 3

Из документов

Mongoose имеет несколько встроенных валидаторов. Строки имеют enum в качестве одного из валидаторов. Поэтому enum создает валидатор и проверяет, задано ли значение в массиве. Например:

var userSchema = new mongooseSchema({
   userType: {
        type: String,
        enum : ['user','admin'],
        default: 'user'
    },
})