Mongoose's `orFail()` function is great for avoiding repetitive `if (doc == null)` checks.
Makes your query throw an error if no results
Learn more 👉 mongoosejs.com/docs/api/quer…#NodeJS#MongoDB
Mongoose 6 removed support for autoReconnect option.
In Mongoose 6, we retry every operation for `serverSelectionTimeoutMS` millis. Mongoose is never permanently disconnected after initial connection, unless you `disconnect()`
#NodeJS#MongoDB#JavaScript
Storing dates (no time component) in MongoDB?
Consider storing dates as YYYYMMDD strings, rather than as Dates.
Can still sort, $lte, $gte, etc., but better readability in UIs
#NodeJS#MongoDB#JavaScript
Mongoose 6.5.1 released
🛠️ Set timestamps on child schema when child schema has timestamps: true but parent schema does not
🛠️ Handle insertMany() with timestamps and discriminators
github.com/Automattic/mongoo…#NodeJS#MongoDB#JavaScript
Mongoose plugins are neat for grouping related functionality.
For example, instead of adding properties and virtuals separately to support reviews, just create a reviewPlugin that adds both.
Similar to the Vue composition API
Learn more mongoosejs.com/docs/plugins.…#NodeJS
JavaScript's `split()` method is actually _very_ slow. Fast enough for end user facing apps, but too slow for libs to use repeatedly.
This is why Mongoose pre-splits schema paths: github.com/Automattic/mongoo…#NodeJS#MongoDB#JavaScript