kosmosafive/bitrix-filter
最新稳定版本:1.0.0
Composer 安装命令:
composer require kosmosafive/bitrix-filter
包简介
Bitrix Filter
README 文档
README
Модульное решение предоставляет механизм создания полей фильтра, прием и фильтрацию данных формы, применение модификаций. Является универсальным.
Field (Поле)
Сущность, описывающая поле фильтра. Примеры полей: булево, положительное целое, селектор выбора, функция, пользователь. Хранит конфигурацию поля (FieldConfig), значение поля. Отвечает за нахождение, фильтрацию и нормализацию данных поля в переданных данных формы. По необходимости поле может содержать дополнительный набор параметров. Например, поле выбора периода позволяет указать минимальную и максимальную даты для выбора; указать доступность выбора даты или даты и времени.
FieldConfig (Конфигурация поля)
Конфигурация поля хранит информацию о Свойстве (Property), идентификаторе поля.
Property (Свойство)
Отвечает за хранение информации о поле(-ях) в запросе (читай: название поля или префикс, используемый при построении запроса). Например, свойство номера (идентификатора) сущности обычно предполагает одно значение. В то время как свойство экспертизы хранит информацию об этапах, голосах.
QueryBuilder (Строитель запроса)
Для работы с конкретной реализацией построения запроса реализуется свой строитель. Например, могут быть реализованы: строитель ORM, строитель Elasticsearch, строитель ClickHouse. Принимает коллекцию полей и данные формы. Находит обработчик для полей и применяет требуемые модификации. Например, строитель ORM хранит объект запроса, который обогащается по мере применения модификаций.
HandlerConfig (Конфигурация обработчика)
Хранит информацию об обработчике поля (Handler) и классе поля, которое обрабатывает.
Handler (Обработчик)
Принимает строителя запроса, поле и данные формы. Применяет необходимые модификации на основе полученных данных. Обработчик может описывать различную логику. Например, эквивалентность, частичное содержание, промежуток, функцию.
统计信息
- 总下载量: 21
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-23