Estoy tratando de ejecutar una consulta de agregación del primer modelo en schema.methods del segundo esquema, que se llama en la publicación guardada del primer modelo.
Código de muestra:
// First Model const FirstSchema = new mongoose.Schema({ // Some fields }) FirstSchema.post('save',async function (){ const first = SecondModel.findOne({_id:mongoose.Types.ObjectId('stringId')}) first.getResults() }) const FirstModel= mongoose.model("FirstModel", FirstSchema ); module.exports = FirstModel; // Second Model const SecondSchema = new mongoose.Schema({ // Some fields }) SecondSchema.methods={ getResults: async function(){ const test1 = await mongoose.model("FirstModel").find() const test2 = await mongoose.model("FirstModel").aggregate(someAggregationpipeline) console.log(test1) console.log(test2) } } const SecondModel= mongoose.model("SecondModel", SecondSchema);Obtengo una matriz vacía para test2 mientras obtengo el resultado correcto para test1.
Además, obtengo el resultado correcto cuando ejecuto la misma canalización de agregación en MongoDB Compass Aggregations