2017-11-18 1 views
0

Ich bin mir nicht sicher, wie ich diese Frage formulieren soll.Mungo - Wie man innerhalb eines Hooks abfragt?

Betrachten Sie den folgenden Code der Modelldatei 'message.js'.

Ich habe einen "post remove" Hook, in dem ich die User-Sammlung abfrage, die in der user.js-Datei definiert ist (Diese Datei ist fast die gleiche wie diese).

Nun möchte ich die Nachrichtensammlung (die in dieser Datei definiert ist) innerhalb des "pre save" Hooks abfragen.

Ist es möglich, das zu tun?

var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 

var User = require('./user'); 

var schema = new Schema({ 
    content: {type: String, required: true}, 
    user: {type: Schema.Types.ObjectId, ref: 'User'} 
}); 

schema.post('remove', function (message) { 
    User.findById(message.user, function (err, user) { 
     user.messages.pull(message); 
     user.save(); 
    }); 
}); 

schema.pre('save', function(next) { 

    //Here I want to query the Message collection 

    next(); 
}); 

module.exports = mongoose.model('Message', schema); 

Antwort

0
schema.pre('save', function(next) { 

    let MessageModel = mongoose.model('Message'); 

    MessageModel.find(findQuery, (err, results) => { 
     if(err) handleError(); 

     //Do stuff with results 
     next(); 
    }); 
}); 
Verwandte Themen