|
|
@@ -10,6 +10,7 @@
|
|
|
- [Модель](#Модель)
|
|
|
- [Свойства](#Свойства)
|
|
|
- [Валидаторы](#Валидаторы)
|
|
|
+- [Трансформеры](#Трансформеры)
|
|
|
- [Репозиторий](#Репозиторий)
|
|
|
- [Фильтрация](#Фильтрация)
|
|
|
- [Связи](#Связи)
|
|
|
@@ -306,6 +307,36 @@ schema.defineModel({
|
|
|
});
|
|
|
```
|
|
|
|
|
|
+## Трансформеры
|
|
|
+
|
|
|
+С помощью трансформеров производится модификация значений определенных
|
|
|
+полей перед записью в базу. Трансформеры позволяют указать какие изменения
|
|
|
+нужно производить с входящими данными.
|
|
|
+
|
|
|
+- `trim` удаление пробельных символов с начала и конца строки
|
|
|
+
|
|
|
+**Пример**
|
|
|
+
|
|
|
+Трансформеры указываются в объявлении свойства модели параметром
|
|
|
+`transform`, который принимает название трансформера. Если требуется
|
|
|
+указать несколько названий, то используется массив. Если трансформер
|
|
|
+имеет настройки, то используется объект, где ключом является название
|
|
|
+трансформера, а значением его параметры.
|
|
|
+
|
|
|
+```js
|
|
|
+schema.defineModel({
|
|
|
+ name: 'user',
|
|
|
+ properties: {
|
|
|
+ name: {
|
|
|
+ type: DataType.STRING,
|
|
|
+ transform: [ // трансформеры свойства "name"
|
|
|
+ 'trim', // обрезать пробелы в начале и в конце строки
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ },
|
|
|
+});
|
|
|
+```
|
|
|
+
|
|
|
## Репозиторий
|
|
|
|
|
|
Выполняет операции чтения и записи документов определенной модели.
|