|
@@ -5,6 +5,7 @@
|
|
|
[API](https://e22m4u.github.io/js-repository/modules.html)
|
|
[API](https://e22m4u.github.io/js-repository/modules.html)
|
|
|
|
|
|
|
|
- [Установка](#Установка)
|
|
- [Установка](#Установка)
|
|
|
|
|
+- [Введение](#Введение)
|
|
|
- [Пример](#Пример)
|
|
- [Пример](#Пример)
|
|
|
- [Схема](#Схема)
|
|
- [Схема](#Схема)
|
|
|
- [Источник данных](#Источник-данных)
|
|
- [Источник данных](#Источник-данных)
|
|
@@ -31,6 +32,47 @@ npm install @e22m4u/js-repository
|
|
|
| `memory` | виртуальная база в памяти процесса (не требует установки) |
|
|
| `memory` | виртуальная база в памяти процесса (не требует установки) |
|
|
|
| `mongodb` | MongoDB - система управления NoSQL базами (*[установка](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter))* |
|
|
| `mongodb` | MongoDB - система управления NoSQL базами (*[установка](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter))* |
|
|
|
|
|
|
|
|
|
|
+## Введение
|
|
|
|
|
+
|
|
|
|
|
+Модуль позволяет объединить несколько баз данных в единую абстракцию «Схема».
|
|
|
|
|
+Абстракция выделяет понятия *Источник данных*, *Модель* и *Репозиторий*.
|
|
|
|
|
+
|
|
|
|
|
+- *Источник данных* - определяет подключение к базе
|
|
|
|
|
+- *Модель* - описывает структуру документа коллекции
|
|
|
|
|
+- *Репозиторий* - выполняет операции чтения и записи
|
|
|
|
|
+
|
|
|
|
|
+```mermaid
|
|
|
|
|
+flowchart TD
|
|
|
|
|
+
|
|
|
|
|
+ A[Схема]
|
|
|
|
|
+ subgraph Базы данных
|
|
|
|
|
+ B[Источник данных 1]
|
|
|
|
|
+ C[Источник данных 2]
|
|
|
|
|
+ end
|
|
|
|
|
+ A-->B
|
|
|
|
|
+ A-->C
|
|
|
|
|
+
|
|
|
|
|
+ subgraph Коллекции
|
|
|
|
|
+ D[Модель A]
|
|
|
|
|
+ E[Модель Б]
|
|
|
|
|
+ F[Модель В]
|
|
|
|
|
+ G[Модель Г]
|
|
|
|
|
+ end
|
|
|
|
|
+ B-->D
|
|
|
|
|
+ B-->E
|
|
|
|
|
+ C-->F
|
|
|
|
|
+ C-->G
|
|
|
|
|
+
|
|
|
|
|
+ H[Репозиторий A]
|
|
|
|
|
+ I[Репозиторий Б]
|
|
|
|
|
+ J[Репозиторий В]
|
|
|
|
|
+ K[Репозиторий Г]
|
|
|
|
|
+ D-->H
|
|
|
|
|
+ E-->I
|
|
|
|
|
+ F-->J
|
|
|
|
|
+ G-->K
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
## Пример
|
|
## Пример
|
|
|
|
|
|
|
|
Определение источника данных, модели и добавление нового документа в коллекцию.
|
|
Определение источника данных, модели и добавление нового документа в коллекцию.
|