TypeScript ORM для Node.js с типобезопасным доступом к PostgreSQL, MySQL, SQLite, MongoDB и другим базам данных.
Automattic/mongoose
ODM для MongoDB в Node.js: схемы, модели, валидация и помощники для запросов в асинхронных приложениях.
- Звёзды
- 27,460
- Форки
- 4,074
- Открытые issues
- 182
- Последний коммит
- 7 часов назад
Что это?
Mongoose — библиотека объектного моделирования данных (ODM) для MongoDB, предназначенная для приложений Node.js, работающих в асинхронной среде. Она позволяет описывать структуру документов с помощью схем, а затем работать с ними как с экземплярами моделей: проверять, сохранять, запрашивать и обновлять.
В схеме задаются типы полей, значения по умолчанию, синхронные и асинхронные валидаторы, геттеры и сеттеры, индексы, хуки middleware, методы экземпляров, статические методы и плагины. Созданные на основе схем модели предоставляют методы запросов, например find, findOne и findById, а документы поддерживают вложенные поддокументы и populate для ссылок между коллекциями.
Mongoose построен на официальном драйвере MongoDB для Node.js и работает в Node.js; также есть альфа-поддержка Deno. Кроме того, библиотека поддерживает несколько подключений через createConnection. Доступен и Mongoose Studio — браузерный GUI для MongoDB, который работает с уже существующими моделями Mongoose.
Ключевые возможности
- 01Определение схем документов с типами, значениями по умолчанию и валидаторами
- 02Запрос, создание, обновление и удаление документов с помощью методов моделей
- 03Вложенные поддокументы и populate для ссылок между коллекциями
- 04Хуки middleware, методы экземпляров, статические методы и плагины
- 05Построен на официальном драйвере MongoDB для Node.js и поддерживает несколько подключений
Сценарии использования
- Добавление структурированного слоя данных в backend на Node.js или Express, использующий MongoDB
- Проверка документов и применение значений по умолчанию перед записью в базу данных
- Повторное использование логики схем в разных моделях с помощью плагинов
Быстрый старт
- 1
Сначала установите Node.js и MongoDB
- 2
Установите пакет mongoose с помощью npm
npm install mongoose - 3
Подключитесь к базе данных MongoDB в коде
await mongoose.connect('mongodb://127.0.0.1/my_database');
Что важно знать
- Для работы требуется отдельно установленный сервер MongoDB.
Темы
Частые вопросы
- Что такое mongoose?
- ODM для MongoDB в Node.js: схемы, модели, валидация и помощники для запросов в асинхронных приложениях. Mongoose — библиотека объектного моделирования данных (ODM) для MongoDB, предназначенная для приложений Node.js, работающих в асинхронной среде. Она позволяет описывать структуру документов с помощью схем, а затем работать с ними как с экземплярами моделей: проверять, сохранять, запрашивать и обновлять.
- mongoose можно использовать бесплатно? Какая у него лицензия?
- mongoose распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- mongoose всё ещё поддерживается?
- Активно поддерживается. Последний коммит в mongoose — 21 окт. 2026 г..
- Для чего можно использовать mongoose?
- Добавление структурированного слоя данных в backend на Node.js или Express, использующий MongoDB Проверка документов и применение значений по умолчанию перед записью в базу данных Повторное использование логики схем в разных моделях с помощью плагинов
- Как установить mongoose?
- Сначала установите Node.js и MongoDB Установите пакет mongoose с помощью npm: npm install mongoose Подключитесь к базе данных MongoDB в коде: await mongoose.connect('mongodb://127.0.0.1/my_database');
- Где скачать mongoose?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Automattic/mongoose
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
ORM для TypeScript и JavaScript, работающий в Node.js и других JS-средах и поддерживающий паттерны Active Record и Data Mapper для множества SQL- и NoSQL-баз данных.
ORM для Node.js на TypeScript, построенная на паттернах Data Mapper, Unit of Work и Identity Map; поддерживает SQL и MongoDB.
Официальный драйвер MongoDB для Node.js и TypeScript: подключается к MongoDB и выполняет запросы из кода приложения.
Meteor — полнофункциональная JavaScript-платформа для создания современных веб-приложений, а также приложений для iOS, Android и настольных систем на основе одной кодовой базы.
Форумное ПО на Node.js с обсуждениями в реальном времени и поддержкой Redis, MongoDB или PostgreSQL.