Поиск

Нажмите, чтобы скопировать

Находит один или несколько объектов модели в базе данных на основе их полей и возвращает их.



Совет: все поиски не чувствительны к регистру и ищут подстроку, соответствующую оператору SQL "ILIKE" с "%" вокруг искомого значения (например, если вы ищете "Max" в "first_name", SQL-запрос будет выглядеть как "first_name" ILIKE "%Max%").

Совет: в поиске можно использовать подстановочные знаки SQL. Например, если вы ищете "ma%m", будет возвращено "Maxim". Если вы передаете эти символы через параметр запроса URL, обязательно закодируйте их (т.е. "%" станет "%25", а "_" может остаться как есть).

Совет: чтобы передать массив через параметр запроса URL, обязательно закодируйте его в следующем формате "arrayName[]=element1&arrayName[]=element2" (например, "colors[]=red&colors[]=blue").

Соединения потока

  • [Вход] In - запускает выполнение блока.
  • [Выход] Out - активируется после завершения выполнения блока.

Соединения данных

  • [Input] _Offset (integer, optional) - первая строка в базе данных, с которой следует начать поиск (индекс начинается с 0).
  • [Input] _Limit (integer, optional) - максимальное количество возвращаемых объектов модели.
  • [Input] _SortOrder (string, optional) - сортировка возвращаемых объектов модели (может быть либо "ASC" для сортировки по возрастанию, либо ""DESC" для сортировки по убыванию).
  • [Input] _SortBy (string, optional) - поле, по которому будут отсортированы возвращаемые объекты модели. Имя поля должно быть предоставлено в нижнем змеином регистре (например, "first_name").
  • [Input] _with (enum, optional) - модели данных, связанные с целевым объектом модели, для извлечения из базы данных. Может быть использована после расширения найденного объекта модели. Подробнее о _with читайте в FAQ по бизнес-процессам.
  • [Input] _Search (string, optional) - значение для поиска в нескольких полях одновременно с использованием логики OR (например, "first_name" = "Max" OR "last_name" = "Max").
  • [Input] _SearchIn (string array, optional) - поля, по которым будет производиться поиск значения, определенного в поле _Ввод данных для поиска. Имена полей должны быть указаны в нижнем регистре (например, "first_name").
  • [Input] Fields (multiple, any) - значения полей для поиска. Будут возвращены любые объекты, содержащие указанную подстроку, поиск также не чувствителен к регистру (например, если значение установлено в "MAX" и значение объекта в базе данных равно "Maxim", он будет возвращен). Поиск эквивалентен оператору SQL "ILIKE", и все ненулевые входы объединяются с помощью логики AND (например, "First Name" ILIKE "%Max%" AND "Last Name" ILIKE "%Parker%").
  • [Output] Data (model array) - объекты модели, найденные в базе данных.
  • [Output] Count (integer) - количество найденных объектов модели.

Если искомая модель имеет отношения "один ко многим" или "многие ко многим" и вы выбрали связанную модель для возврата с помощью ввода данных _with, вы также сможете определить, какие связанные объекты будут возвращены (применяя к ним _Sort, _Search и т.п.). Помните, что вы не будете фильтровать искомую модель по этим параметрам, только связанные модели (подробнее см. видео выше).