Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

173
Vistas
Acceder a los valores predeterminados del esquema

He definido y exportado un esquema con algunos valores predeterminados para mi base de datos. ¿Cómo accedo a los valores predeterminados del esquema desde otro módulo?

 const mySchema = new Schema({ property: { type: String, enum: ['a', 'b', 'c', ...] }, ... }); module.exports = mongoose.model('Alpha', mySchema);

Como ejemplo, me gustaría recorrer los valores de la matriz de enumeración y console.log(array[i]).

 let alphabet = mySchema.property.enum alphabet.forEach(letter => console.log(letter))
about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

No es posible acceder a los valores de enum predeterminados desde el propio esquema mongoose. Deberá almacenar las enums en una variable separada y usarla en su modelo. Luego exporte esa variable y utilícela donde sea necesario.

 export enum PropertyEnums { a = "a", // set value of enum a to "a" else it will default to 0 b = "b", c = "c", ... } const mySchema = new Schema({ property: { type: String, enum: Object.values(PropertyEnums), // equivalent to ["a", "b", "c", ...] default: PropertyEnums.a // if you want to set a default value for this field }, ... }); module.exports = mongoose.model('Alpha', mySchema);

Luego, simplemente importe la enumeración donde se necesita así:

 import { PropertyEnums } from "./yourSchemaFile.js" let alphabet = Object.values(PropertyEnums) alphabet.forEach(letter => console.log(letter))
about 4 years ago · Santiago Trujillo Denunciar

0

Puede definir como a continuación:

 export enum Props { A = 'A', B = 'B' }

en esquema:

 property: { type: String, enum: Props },

para el acceso:

 for (let item in Props) { if (isNaN(Number(item))) { console.log(item); } }
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda