|
|
@@ -232,6 +232,27 @@ schema.defineModel({
|
|
|
// }
|
|
|
```
|
|
|
|
|
|
+## Связи
|
|
|
+
|
|
|
+Параметр `relations` находится в составе определения модели и принимает
|
|
|
+объект, ключ которого являются названием связи, а значением объект
|
|
|
+с параметрами.
|
|
|
+
|
|
|
+**Параметры**
|
|
|
+
|
|
|
+- `type: string` тип связи
|
|
|
+- `model: string` целевая модель
|
|
|
+- `foreignKey: string` поле для идентификатора цели
|
|
|
+- `polymorphic: boolean|string` объявить связь полиморфной*
|
|
|
+- `discriminator: string` поле для названия целевой модели (для `polymorphic: true`)
|
|
|
+
|
|
|
+**Тип связи**
|
|
|
+
|
|
|
+- `belongsTo` - документ содержит поле с идентификатором целевой модели
|
|
|
+- `hasOne` - обратная сторона `belongsTo` по принципу "один к одному"
|
|
|
+- `hasMany` - обратная сторона `belongsTo` по принципу "один ко многим"
|
|
|
+- `referencesMany` - документ содержит массив с идентификаторами целевой модели
|
|
|
+
|
|
|
## Тесты
|
|
|
|
|
|
```bash
|