I'm somewhat new to NodeJS, I come from the traditional LAMP stack world, most of my apps were in CodeIgniter, and I was beginning to work with Laravel, which has an amazing ORM,
Eloquent.
I'm switching my primary project over from PHP/Apache to NodeJS/ExpressJS, and since I'm early enough in my project, I wanted to be sure I am choosing the best ORM for the job.
Currently, I'm tinkering around with SequelizeJS, and thats the only one I've messed with so far. I was told that it's the best one out there, but the people that have told me that, haven't tried anything else, or researched anything else either, lol.
I like SequelizeJS, it seems pretty good, but I've ran into a few limitations, all of which could be solved if it was setup so I could write plugins or extensions for it, but its just not setup like that. I do like the 'paranoid' feature (adds a timestamp to the deletedOn column, and excludes it from future searches, unless paranoid is disabled), which unless I overlooked it, I didn't see that in the other ORM's.
Any topics or articles I've found online about any of these ORM's are pretty dated and review very old versions of the ORM's, so I was just hoping to get some input on what others use in their projects.
My Preferences (But not required):
- Good documentation
- Plugin support
- Something similar to the paranoid setting found in SequelizeJS
- Very good support for relationships
- Support for Regex searching (RLIKE, REGEXP)
- Support for both ENUM and SET column types
SequelizeJS seems to follow most of those, but I have to mess with some of the queries or models to get it to work right, if theres an ORM that does all of the above out of the box, that would be great!
Thank you
-J