Насколько сложно выбрать ORM для Node.js? Или в Node.js отсутствует зрелая ORM
Мне нужно разработать продюсерский проект. Это сайт электронной коммерции. Мой текущий стек:
- Node.js
- Машинопись
- PostgreSQL
Теперь мне нужно выбрать ORM для этого проекта. Думаю, у меня есть два варианта:
- ТипОРМ. Я использовал эту ORM раньше. Это хорошее и стабильное программное обеспечение, но у TypeORM некоторое время были проблемы с обслуживанием. Я не уверен в будущем этой ORM.
- МикроОРМ. В TypeORM отсутствуют некоторые полезные функции, такие как @Filters (области действия) и массовые подписчики, в то время как MikroORM, с другой стороны, имеет эти функции или альтернативы (см. Фильтры и альтернативу массовым подписчикам). Но MikroORM менее популярен и относительно новый. И многие функции MikroORM все еще находятся в альфа- версии.
Резюме
ORM с отсутствием обслуживания и функций, но стабильный или ORM с отличным обслуживанием, новыми функциями, но не испытанным в боевых условиях. Какой вариант лучше? А может есть альтернативы?
3 ответа
Вы можете проверить Sequelize - https://sequelize.org/, он поддерживает TypeScript, но синтаксис, на мой взгляд, уродливый. Среди этих трех наиболее зрелым ORM является Sequelize.
TypeORM очень хорош, но имеет несколько таких серьезных ошибок - https://github.com/typeorm/typeorm/issues/3095. Я столкнулся с той же или, возможно, аналогичной проблемой, связанной с сохранением отношений от одного ко многим, что, на мой взгляд, является одной из самых важных функций каждого ORM, и оно должно работать правильно.
Некоторое время я использовал MikroORM - опять же, есть некоторые незначительные проблемы, которые, к счастью, будут исправлены в версии 4. В целом, большинство функций работает правильно, и почти все проблемы, которые у меня были, были решены очень быстро после сообщения о них на github.
Я рекомендую Prisma, новую NodeJS ORM с отличными функциями и документацией.
есть именем орм с@ gradii / fedaco . код преобразован из laravel eloquent. в настоящее время все еще в процессе