Я знаю, что это общий вопрос, но я провел тесты, и мне нужны некоторые особенности!
Мне нужны функции:
- свойства карты для имен столбцов
- используйте имя таблицы, отличное от имени модели
- поддержка мягких удалений (параноидальный режим при продолжении)
- поддержка записи по времени (с возможностью указать для каждой другой модели имя столбца)
- поддержка внешних ключей
- должен поддерживать mysql и sqlite
- архитектура должна поддерживать модель для каждого файла
Дополнительные функции:
- кеш
- (поддержка redis/memcache)
- инструмент командной строки для генерации моделей из базы данных
Я тестировал:
- node -orm
- для обработки собственных имен столбцов вам необходимо обходное решение
- мягкие удаления не поддерживаются и не могут поддерживаться даже при использовании внешнего плагина (я попытался написать один, используя hook раньше, но я могу "остановить" его от удаления записи)
- не поддерживают модель для файла (вам нужно обходное решение)
- sequelize
- не создавать внешние ключи
- невозможно сопоставить свойства с именами столбцов
- поддержка модели для каждого файла, но она не работает очень хорошо (вам нужно установить отношения в файл, который включает в себя модели)
- node -persist
- Мне не нравится необходимость указывать экземпляр подключения для всего
Сейчас я собираюсь проверить JugglingDB и Bookshelf.js(но мне не нравится слишком много последнего).