2017-11-18 15 views
0

私はこの質問をどのように策定するかについて100%確信していません。Mongoose - フック内での照会方法は?

「message.js」モデルファイルの次のコードを検討してください。

私はuser.jsファイル(このファイルとほぼ同じです)に定義されているUserコレクションを照会する「削除後」フックを持っています。

ここでは、 "pre save"フック内のMessageコレクション(このファイルで定義されています)を照会します。

これは可能ですか?

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); 

答えて

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

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

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

     //Do stuff with results 
     next(); 
    }); 
}); 
関連する問題