Ответы пользователя по тегу Паттерны проектирования
  • Фильтрация по большому количеству параметров QueryBuilder, какие есть варианты?

    passionkillah
    @passionkillah
    Backend-разработчик
    Можно сделать интерфейс для фильтров и реализовывать его для каждого конкретного фильтра. В нем будут методы для получения алиаса (для того, чтобы превратить массив фильтров из запроса в массив классов), установления значения фильтра, а также добавления условия в queryBuilder. Получая из запроса массив фильтров, собираем массив классов, реализующих этот интерфейс (можно, кстати, сделать коллекцию, но это по желанию) и в репозитории проходимся по нему циклом и для каждого элемента вызываем метод, который добавляет условия к текущему queryBuilder'у.
    Ответ написан
    Комментировать