As of 2021, this is semi-decent.
The documentation is a bit messy and misses a lot of stuff. The examples are often too short, and it is hard to understand what specific options they are talking about do because they lack clear input/expected output pairs.
The implementation also has several inelegant/unintuitive annoyances/requirements of code repetition that drive you mad.
The association API is notably bad, it took a few days for Ciro Santilli to learn to do what he considers "basic" association operations, knowledge which he dumped to: https://stackoverflow.com/questions/22958683/how-to-implement-many-to-many-association-in-sequelize/67973948#67973948
Some issues include:
- foreign keys are capitalized:
- you must give
foreignKeywhen using aliases, otherwise it fails subtely. That would be derived automatically.
- https://stackoverflow.com/questions/41502699/return-flat-object-from-sequelize-with-association can't auto-flatten to reuse the database's
offsetdon't work without
- https://stackoverflow.com/questions/34059081/how-do-i-reference-an-association-when-creating-a-row-in-sequelize-without-assum hard to not duplicate foreign keys values everywhere
- they implement stuff but simply don't document it, check out these comments:
- stack traces permanently broken or requiring non-obvious configs:
- Node.js object-relational mapping library | 0, 203, 1
- Node.js library | 0, 210, 3
- Node.js | 32, 2k, 25
- List of programming languages | 0, 3k, 61
- Programming language | 581, 4k, 66
- Software | 0, 16k, 350
- Computer | 138, 24k, 589
- Technology | 0, 39k, 908
- Ciro Santilli's Homepage | 262, 181k, 3k