web-dev-qa-db-fra.com

Comment créer et utiliser Enum en mangouste

J'essaie de créer et d'utiliser un type enum dans Mongoose. J'ai vérifié, mais je n'obtiens pas le bon résultat. J'utilise enum dans mon schéma de mangouste comme suit:

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

Mais je suis un peu confus ici, comment puis-je mettre la valeur d'un enum comme dans Java NEW("new"). Comment puis-je enregistrer un enum dans la base de données en fonction de ses valeurs énumérables. Je l'utilise dans express node.js.

52
Prabjot Singh

Les énumérations ici sont essentiellement des objets String. Changez la ligne enum en enum: ['NEW', 'STATUS'] au lieu. Vous y avez une faute de frappe avec vos guillemets.

100
Mindstormer619

Enums is String objects ainsi, par exemple: enum :['a','b','c'] ou probablement comme ça const listOfEn = ['a','b','c']; => enum: listOfEn

8
hien711

De la docs

Mongoose a plusieurs validateurs intégrés. Les chaînes ont enum parmi les validateurs. Donc, enum crée un validateur et vérifie si la valeur est donnée dans un tableau. Par exemple:

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

5
Deeksha Sharma