Using Mongoose middleware
Mongoose middleware are functions that can intercept the process of the init
, validate
, save
, and remove
instance methods. Middleware are executed at the instance level and have two types: pre
middleware and post
middleware.
Using pre middleware
Pre
middleware gets executed before the operation happens. For instance, a pre-save
middleware will get executed before the saving of the document. This functionality makes pre
middleware perfect for more complex validations and default values assignment.
A pre
middleware is defined using the pre()
method of the schema object, so validating your model using a pre
middleware will look like the following code snippet:
UserSchema.pre('save', function(next) { if (...) { next() } else { next(new Error('An Error Occured')); } });
Using post middleware
A post
middleware gets executed after the operation happens. For instance, a post-save
middleware will get executed after saving the document. This functionality makes post...