e22m4u 2 лет назад
Родитель
Сommit
cda597ddee
1 измененных файлов с 52 добавлено и 0 удалено
  1. 52 0
      README.md

+ 52 - 0
README.md

@@ -525,6 +525,58 @@ schema.get(RepositoryRegistry).setRepositoryCtor(MyRepository);
 // экземпляр класса MyRepository
 ```
 
+### Filter
+
+Большинство методов репозитория принимают объект `filter` для
+фильтрации возвращаемого ответа. Описание параметров объекта:
+
+- `where` условия выборки  
+  *примеры*  
+  `where: {foo: 'bar'}` поиск по значению поля  
+  `where: {foo: {eq: 'bar'}}` оператор равенства `eq`  
+  `where: {foo: {neq: 'bar'}}` оператор неравенства `neq`  
+  `where: {foo: {gt: 5}}` оператор "больше" `gt`  
+  `where: {foo: {lt: 10}}` оператор "меньше" `lt`  
+  `where: {foo: {gte: 5}}` оператор "больше или равно" `gte`  
+  `where: {foo: {lte: 10}}` оператор "меньше или равно" `lte`  
+  `where: {foo: {inq: ['bar', 'baz']}}` равенство одного из значений `inq`  
+  `where: {foo: {nin: ['bar', 'baz']}}` исключение значений массива `nin`  
+  `where: {foo: {between: [5, 10]}}` оператор диапазона `between`  
+  `where: {foo: {exists: true}}` оператор наличия значения `exists`  
+  `where: {foo: {like: 'bar'}}` оператор поиска подстроки `like`  
+  `where: {foo: {ilike: 'BaR'}}` регистронезависимая версия `ilike`  
+  `where: {foo: {nlike: 'bar'}}` оператор исключения подстроки `nlike`  
+  `where: {foo: {nilike: 'BaR'}}` регистронезависимая версия `nilike`  
+  `where: {foo: {regexp: 'ba.+'}}` оператор регулярного выражения `regexp`  
+  `where: {foo: {regexp: 'ba.+', flags: 'i'}}` флаги регулярного выражения  
+
+
+- `order` определение порядка  
+  *примеры*  
+  `order: 'foo'` упорядочить по полю `foo`  
+  `order: 'foo ASC'` явное указание порядка  
+  `order: 'foo DESC'` инвертировать порядок  
+  `order: ['foo', 'bar ASC', 'baz DESC']` по нескольким полям  
+
+
+- `limit` ограничение количества  
+  *примеры*  
+  `limit: 0` не ограничивать выборку  
+  `limit: 14` не более 14 объектов выборки  
+
+
+- `skip` пропуск выборки  
+  *примеры*  
+  `skip: 0` выборка без пропуска  
+  `skip: 10` пропустить 10 объектов выборки  
+
+
+- `include` включение связанных данных в результат  
+  *примеры*  
+  `include: 'foo'` включение связи `foo`  
+  `include: ['foo', 'bar']` включение `foo` и `bar`  
+  `include: {foo: 'bar'}` включение вложенной связи `foo`  
+
 ## Тесты
 
 ```bash