|
|
@@ -9,8 +9,8 @@ npm install @e22m4u/js-repository
|
|
|
```
|
|
|
|
|
|
Опционально устанавливаем адаптер. Например, если используемой базой
|
|
|
-является *MongoDB*, то для подключения к ней потребуется добавить
|
|
|
-[пакет адаптера mongodb](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter)
|
|
|
+является *MongoDB*, то для подключения потребуется добавить
|
|
|
+[адаптер mongodb](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter)
|
|
|
как отдельную зависимость.
|
|
|
|
|
|
```bash
|
|
|
@@ -19,10 +19,10 @@ npm install @e22m4u/js-repository-mongodb-adapter
|
|
|
|
|
|
Список доступных адаптеров:
|
|
|
|
|
|
-| адаптер | описание |
|
|
|
+| название | описание |
|
|
|
|---------|-------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
|
-| memory | виртуальная база в памяти процесса (для разработки и тестирования) |
|
|
|
-| mongodb | MongoDB - система управления NoSQL базами данных (*[требует установки](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter))* |
|
|
|
+| `memory` | виртуальная база в памяти процесса (для разработки и тестирования) |
|
|
|
+| `mongodb` | MongoDB - система управления NoSQL базами (*[требует установки](https://www.npmjs.com/package/@e22m4u/js-repository-mongodb-adapter))* |
|
|
|
|
|
|
## Концепция
|
|
|
|
|
|
@@ -48,7 +48,7 @@ import {Schema} from '@e22m4u/js-repository';
|
|
|
const schema = new Schema();
|
|
|
```
|
|
|
|
|
|
-Интерфейс экземпляра `Schema` содержит три основных метода:
|
|
|
+Интерфейс `Schema` содержит три основных метода:
|
|
|
|
|
|
- `defineDatasource(datasourceDef: object): this` - добавить источник
|
|
|
- `defineModel(modelDef: object): this` - добавить модель
|
|
|
@@ -57,12 +57,13 @@ const schema = new Schema();
|
|
|
#### Источник данных
|
|
|
|
|
|
Источник описывает способ подключения к базе, и используемый адаптер.
|
|
|
-Если адаптер имеет настройки, то они передаются в объекте определения
|
|
|
-источника методом `defineDatasource`, как это показано ниже.
|
|
|
+Если адаптер имеет настройки, то они передаются вместе с объектом
|
|
|
+определения источника методом `defineDatasource`, как это показано
|
|
|
+ниже.
|
|
|
|
|
|
```js
|
|
|
schema.defineDatasource({
|
|
|
- name: 'myMongo', // название нового источника данных
|
|
|
+ name: 'myMongo', // название нового источника
|
|
|
adapter: 'mongodb', // название выбранного адаптера
|
|
|
// настройки адаптера mongodb
|
|
|
host: '127.0.0.1',
|
|
|
@@ -74,7 +75,7 @@ schema.defineDatasource({
|
|
|
Параметры источника:
|
|
|
|
|
|
- `name: string` уникальное название
|
|
|
-- `adapter: string` выбранный адаптер базы данных
|
|
|
+- `adapter: string` выбранный адаптер
|
|
|
|
|
|
При желании можно использовать встроенный адаптер `memory`, который хранит
|
|
|
данные в памяти процесса. У него нет специальных настроек, и он отлично
|
|
|
@@ -110,7 +111,7 @@ schema.defineModel({
|
|
|
|
|
|
Параметры модели:
|
|
|
|
|
|
-- `name: string` название новой модели (обязательно)
|
|
|
+- `name: string` уникальное название модели (обязательно)
|
|
|
- `datasource: string` выбранный источник данных
|
|
|
- `properties: object` определения полей модели
|
|
|
- `relations: object` определения связей модели
|