Фильтр товаров

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
gerzog1995
Сообщения: 29
Зарегистрирован: 2018.07.29, 21:07

Фильтр товаров

Сообщение gerzog1995 »

Не могу понять по какому принципу работает фильтр товаров в каталогах на примере крупных сайтов, при выборе фильтра допустим Цвет, отображаются товары и при этом в самом фильтре становятся не активные чекбоксы для выбора и активные с подсчетом количества товаров, я сделал пока чтобы отображались открытые варианты выбора из списка свойств товаров которые уже отфильтрованы, то есть которые показаны на сайте товары. Таблица свойств у меня динамическая, пример одной записи в бд
Свойства (ид записи, ид товара, код свойства, значения свойства)
Свойства (1,12, 5, Белый)
Вопрос состоит в том, что не понятно как сделать возможные варианты выбора в чекбоксах и подсчет количества товаров на каждом варианте свойства фильтра. Возможно какая-то другая структура таблицы или вторая таблица для таких целей, или алгоритм определенный, подскажите пожалуйста.
Аватара пользователя
yiijeka
Сообщения: 3103
Зарегистрирован: 2012.01.28, 09:14
Откуда: Беларусь
Контактная информация:

Re: Фильтр товаров

Сообщение yiijeka »

При изменении любого фильтра, делается запрос на сервер с текущими выбранными фильтрами. Ответ возвращается обычно как структура:
- сколько товаров попадет под фильтр
- какие фильтры доступны под эти товары

Результат обрабатывается и html фильтров перестраивается, согласно полученному ответу.
gerzog1995
Сообщения: 29
Зарегистрирован: 2018.07.29, 21:07

Re: Фильтр товаров

Сообщение gerzog1995 »

Я это уже реализовал все, но список фильтров доступных под текущие товары, то есть у меня если выбран Бренд один, то вариантов уже нет, потому что я же достаю доступность фильтров из текущих товаров, а в них только один бренд, мне не понятно как сделать сопутствующие доступные фильтра, чтобы при выборе того же бренда оставались еще варианты доп. выборки
andku83
Сообщения: 988
Зарегистрирован: 2016.07.01, 10:24
Откуда: Харьков

Re: Фильтр товаров

Сообщение andku83 »

для каждой из групп фильтров нужно выполнить запрос исключая ограничения по своей группе
gerzog1995
Сообщения: 29
Зарегистрирован: 2018.07.29, 21:07

Re: Фильтр товаров

Сообщение gerzog1995 »

Спасибо, реализовал, все работает, только когда 6к товаров в категории, то страница при выборе фильтра первого думает от 4 до 6 сек, кеш включен, индексы в базу проставлены, лишних запросов нет, товары достаю для сбора уникальных свойств методом ->asArray()
someweb
Сообщения: 552
Зарегистрирован: 2017.03.09, 10:12

Re: Фильтр товаров

Сообщение someweb »

Если при повторном выборе той же категории выполняется так же долго, то кэш используется неправильно.
Смотрите планы запросов, может индексов не хватает где то.
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.
Ответить