Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/e22m4u/js-repository-mongodb-adapter
MongoDB адаптер для модуля @e22m4u/js-repository
https://github.com/e22m4u/js-repository-mongodb-adapter
database datasource mongodb nodejs odm orm relations repository russian russian-language
Last synced: 3 days ago
JSON representation
MongoDB адаптер для модуля @e22m4u/js-repository
- Host: GitHub
- URL: https://github.com/e22m4u/js-repository-mongodb-adapter
- Owner: e22m4u
- License: mit
- Created: 2024-03-16T14:35:13.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2024-11-09T11:12:00.000Z (7 days ago)
- Last Synced: 2024-11-09T12:19:43.596Z (7 days ago)
- Topics: database, datasource, mongodb, nodejs, odm, orm, relations, repository, russian, russian-language
- Language: JavaScript
- Homepage:
- Size: 370 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## @e22m4u/js-repository-mongodb-adapter
MongoDB адаптер для [@e22m4u/js-repository](https://www.npmjs.com/package/@e22m4u/js-repository)
## Установка
```bash
npm install @e22m4u/js-repository-mongodb-adapter
```## Параметры
Все указанные параметры опциональны:
| название | значение по умолчанию |
|----------|-----------------------|
| protocol | `'mongodb'` |
| host | `'127.0.0.1'` |
| port | `27017` |
| database | `'database'` |
| username | `undefined` |
| password | `undefined` |Пример:
```js
import {Schema} from '@e22m4u/js-repository';const schema = new Schema();
// объявление источника
schema.defineDatasource({
name: 'myMongo', // название источника
adapter: 'mongodb', // имя адаптера
// параметры
host: '127.0.0.1',
port: 27017,
database: 'myDatabase',
});// объявление модели
schema.defineModel({
name: 'user', // название модели
datasource: 'myMongo', // используемый источник
properties: { // поля модели
name: 'string',
surname: 'string',
},
});// получаем репозиторий по названию модели и создаем запись
const userRep = schema.getRepository('user');
const user = await userRep.create({name: 'John', surname: 'Doe'});console.log(user);
// {
// id: '64f3454e5e0893c13f9bf47e',
// name: 'John',
// surname: 'Doe',
// }
```## Тесты
Запуск контейнера `mongo:latest` скриптом `setup.sh`
```bash
./setup.sh
```Выполнение тестов
```bash
npm run test
```## Лицензия
MIT