Фильтр список
Данный фильтр представляет из себя список с предустановленными значениями. С настройками по-умолчанию имеет вид <select>.
Параметр | Тип данных | Обязательный | По-умолчанию |
---|---|---|---|
Имя параметра фильтра (param_name) | string | + | – |
Заголовок фильтра (title) | string | + | – |
Список значений (choices) | map | + | – |
Поле для поиска (field) | string | + | – |
Раскрытый фильтр (expanded) | bool | – | false |
Несколько значений (multiple) | bool | – | false |
Первый пустой элемент (placeholder) | string | – | пустая строка |
Параметры
Имя параметра (param_name)
Обязательный параметр. Тип данных: string
Имя query параметра. Также под этим именем данный фильтр будет доступен в переменной searchForm.
Например:
param_name |
Пример запроса |
Доступ к объекту фильтра |
---|---|---|
foo | ?foo=bar | {{ searchForm.foo }} |
somevalue | ?somevalue=123 | {{ searchForm.somevalue }} |
Заголовок (title)
Обязательный параметр. Тип данных: string
Заголовок фильтра.
Список значений (choices)
Обязательный параметр. Тип данных: map
Коллекция пар ключ => значение для выбора. Пример в нотации json:
{ "1": "Значение 1", "2": "Значение 2", "3": "Значение 3" }
Также ключи могу быть не числовыми:
{ "one": "Значение 1", "two": "Значение 2", "three": "Значение 3" }
В запросе к хранилищу товаров будет фигурировать именно ключ, поэтому его следует подбирать исходя из того, каким образом хранятся данные в хранилище.
Поле для поиска (field)
Обязательный параметр. Тип данных: string
Поле, по которому необходимо осуществлять поиск. Если поиск осуществляется по атрибуту типа товара "Список", то поле может иметь следующие значения, в зависимости от типа данных у атрибута:
Тип данных атрибута | Значение |
---|---|
int | field-%n_p_i |
string | field-%n_p_s |
где %n – идентификатор атрибута типа товара
Раскрытый фильтр (expanded) и возможность выбора нескольких значений (multiple)
В зависимости от настроек этих двух параметров, можно получить в HTML разные виды этого фильтра:
Значение expanded | Значение multiple | Тип элемента в HTML |
---|---|---|
false | false | <select> |
false | true | <select multiple="true"> |
true | false | radio |
true | true | чекбоксы |
Первый пустой элемент (placeholder)
Значение для пустого элемента.