rustam_kuliev88
@rustam_kuliev88

Как лучше реализовать структуру фильтра товаров?

Всем привет. Еще не сталкивался с задачей фильтров товаров, поэтому прошу помощи более опытных.

Что есть:

ID - Товара
ID_CATEGORY - ID его категории
DESCRIPTION - Описание товара
TITLE - Название товара
PRICE - Цена
SKLAD - Остаток склада
PHOTO - Фото товара
PART_NUMBER - Артикул

Вопрос как лучше создать для фильтра? Сделать еще поля в этой таблице или же вынести в новую по связи с ID товара ?

Предполагаю наличие следующих полей в случае отдельной

ID_TOV - Связь с товаром
SVOYSTVA (сюда буду класть их из 1с в JSON) - Тут будут все свойства товара

Подскажите как правильно сделать, планирую сделать похожее на фильтр битрикса, выводятся значения в чекбоксах, потом уходят на бэк, потом возвращаются значения, по всей видимости стандартный фильтр, спасибо.
  • Вопрос задан
  • 186 просмотров
Пригласить эксперта
Ответы на вопрос 2
@skrimafonolog
Классика этого дела - это EAV. Полно документации, примеров - всё разжевано. Но весьма погано по производительности.

Гибче и производительнее будет использование FTS (Full-Text-Search). Автоматом получите сразу и фильтр и поиск по названию/описанию товаров.

Вот здесь у stratosmi разжевано детально:
Структура базы данных магазина/каталога для SQL. Как лучше хранить атрибуты и их значения в БД?
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
1) подучить английский и все сущности писать на английском, а не вот это все SVOYSTVA SKLAD, и большими буквами не надо. Так же обычно связи называют category_id, product_id, а не наоборот.
2) свойства хранить в json плохая идея, выборку по таким полям будет сложно осуществлять, кроме того скорость работы такой выборки будет кошмарной. EAV будет более подходящим вариантом хранения.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы