|
@@ -2156,7 +2156,7 @@ dbs.defineModel({
|
|
|
|
|
|
|
|
#### Has One
|
|
#### Has One
|
|
|
|
|
|
|
|
-Обратная сторона `belongsTo` по принципу "один к одному".
|
|
|
|
|
|
|
+Обратная сторона `belongsTo` по принципу *"один к одному"*.
|
|
|
|
|
|
|
|
```
|
|
```
|
|
|
Текущая (profile) Целевая (user)
|
|
Текущая (profile) Целевая (user)
|
|
@@ -2184,7 +2184,7 @@ dbs.defineModel({
|
|
|
|
|
|
|
|
#### Has Many
|
|
#### Has Many
|
|
|
|
|
|
|
|
-Обратная сторона `belongsTo` по принципу "один ко многим".
|
|
|
|
|
|
|
+Обратная сторона `belongsTo` по принципу *"один ко многим"*.
|
|
|
|
|
|
|
|
```
|
|
```
|
|
|
Текущая (role) Целевая (user)
|
|
Текущая (role) Целевая (user)
|
|
@@ -2304,6 +2304,40 @@ dbs.defineModel({
|
|
|
});
|
|
});
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
|
|
+#### Has One (полиморфная версия)
|
|
|
|
|
+
|
|
|
|
|
+Объявление связи с указанием названия связи целевой модели:
|
|
|
|
|
+
|
|
|
|
|
+```js
|
|
|
|
|
+dbs.defineModel({
|
|
|
|
|
+ name: 'user',
|
|
|
|
|
+ relations: {
|
|
|
|
|
+ avatar: { // название связи
|
|
|
|
|
+ type: RelationType.HAS_ONE, // целевая модель ссылается на текущую
|
|
|
|
|
+ model: 'file', // название целевой модели
|
|
|
|
|
+ polymorphic: 'reference', // название полиморфной связи целевой модели
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+});
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+Объявление связи с указанием свойств целевой модели:
|
|
|
|
|
+
|
|
|
|
|
+```js
|
|
|
|
|
+dbs.defineModel({
|
|
|
|
|
+ name: 'user',
|
|
|
|
|
+ relations: {
|
|
|
|
|
+ avatar: { // название связи
|
|
|
|
|
+ type: RelationType.HAS_ONE, // целевая модель ссылается на текущую
|
|
|
|
|
+ model: 'file', // название целевой модели
|
|
|
|
|
+ polymorphic: true, // название текущей модели находится в дискриминаторе
|
|
|
|
|
+ foreignKey: 'referenceId', // свойство целевой модели для идентификатора
|
|
|
|
|
+ discriminator: 'referenceType', // свойство целевой модели для названия текущей
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+});
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
#### Has Many (полиморфная версия)
|
|
#### Has Many (полиморфная версия)
|
|
|
|
|
|
|
|
Объявление связи с указанием названия связи целевой модели:
|
|
Объявление связи с указанием названия связи целевой модели:
|