Este é um dos principais casos de uso do
'remove'
do Mongoose middleware. clientSchema.pre('remove', function(next) {
// 'this' is the client being removed. Provide callbacks here if you want
// to be notified of the calls' result.
Sweepstakes.remove({client_id: this._id}).exec();
Submission.remove({client_id: this._id}).exec();
next();
});
Dessa forma, quando você chama
client.remove()
este middleware é invocado automaticamente para limpar dependências.