Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

150
Visualizações
Los ganchos pre y post de Mongoose no funcionan en modelos creados con Model.discriminator

Estoy usando mangosta 6.1.5.

Tengo una colección que contiene varios tipos de documentos relacionados. Aquí está parameter-descriptor-item.model.js

 const mongoose = require('mongoose'); const { Schema } = mongoose; /** @summary The schema for a parameter item */ const itemSchema = new Schema({ _id: String, name: Object, }); itemSchema.pre(/^find/, function () { // eslint-disable-next-line no-console console.log('item pre hit'); }); /** @summary The base model for all parameter items */ module.exports = mongoose.model('Parameters', itemSchema);

El modelo ParameterDescriptor se hereda de ParameterDescriptorItem . Aquí está parameter-descriptor.model.js

 const mongoose = require('mongoose'); const ParameterDescriptorItem = require('./parameter-descriptor-item.model'); const { Schema } = mongoose; /** @summary The schema for additional fields for a project */ const parameterSchema = new Schema({ direction: { type: String, enum: ['in', 'out'], required: true, }, default: { type: Number, required: true, }, min: { type: Number, required: false, }, max: { type: Number, required: false, }, unit: { type: String, required: false, }, }); parameterSchema.pre(/^find/, function () { // eslint-disable-next-line no-console console.log('parameter pre hit'); }); /** @summary The model for a parameter descriptor */ module.exports = ParameterDescriptorItem.discriminator('Parameter', parameterSchema);

Y aquí está el código para probar el uso de ganchos pre .

 const ParameterDescriptorItem = require('./parameter-descriptor-item.model'); const ParameterDescriptor = require('./parameter-descriptor.model'); await ParameterDescriptorItem.find(); // console shows: 'item pre hit' await ParameterDescriptor.find(); // there is nothing additional in the console. Neither the 'pre' hooks from // ParameterDescriptorItem or ParameterDescriptor is called.

Este es un tema importante para mí. ¿Hay alguna manera de abordarlo? ¿Hay alguna manera de agregar ganchos previos y posteriores a los modelos creados con Model.discriminator?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda