Как правильно реализовать характеристики товара

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
320
Реакции
72
Здравствуйте, есть список товаров с разных категорий, хочу добавить характеристики к каждому товару что бы в будущем можно было пользоваться фильтрами в категории, я так понимаю мне нужно создать категории фильтров? то есть, есть таблица с товарами, #_catalog и категориями #_catalog_category мне нужно добавить #_catalog_specifications и #_catalog_specifications_item.

В результате я получу каталог товаров из таблицы #_catalog_category и будут выводить товары по ID товара, что бы привязать спецификации мне нужно в #_catalog_specifications и от туда ID спецификаций будет записываться в #_catalog_specifications_item и уже из #_catalog_specifications_item буду записи #_catalog_specifications_item будут привязаны к #_catalog_specifications в то время когда #_catalog_specifications будет привязан к #_catalog_category. для каждого товара будет в карту #_catalog_specifications_item буду писать ID категории и ID товара. Поля у всех категорий разные где то схожие где то в корне разные. Может кто сталкивался с подобным? научите пожалуйста как правильно реализовать в базе данных хранение и зависимости данных. Спасибо.

Суть вопроса, правильно ли я мыслю? и если нет, подскажите как надо.


#_catalog
id, title, catid

#_catalog_category
id, title

#_catalog_specifications
id, catid

#_catalog_specifications_item
id, title, catss

#_catalog_specifications_item_feature
id, uid, content, idcard

catss ID каталога спецификаций
idcard ID карты товара
catid ID категории
uid ID из списка возможных характеристики - catalog_specifications_item
content сама характеристика

Получается, есть категория, миксеры. ID категории 155, создавая запись в catalog_specifications я унаследую ID категории, 155 в catid, далее завожу характеристику в catalog_specifications_item здесь я унаследую ID из catalog_specifications и ID текущей записи пусть будет 77, после я уже могу привязывать характеристики в catalog_specifications_item_feature к ID 77, цвет, мощность, дистанция и тд.
Получается все характеристики которые будут под 77 я без проблем смогу сортировать товары по характеристикам?

Вот примерно так я себе это представляю.
 
Последнее редактирование:

Minor

Постоялец
Регистрация
16 Авг 2012
Сообщения
258
Реакции
110
Мне нраится в как реализованы характеристики товара в SimplaCMS, это сделано так

1. Таблица продуктов products
id, category_id, product

2. Таблица характеристик features
id, name, in_filter

3. Таблица связей
product_id, feature_id, value

При запросе категории, вытягиваются все товары, все feature_id и value для создания массива вариантов свойств, а из features их названия.
 

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
320
Реакции
72
Мне нраится в как реализованы характеристики товара в SimplaCMS, это сделано так

1. Таблица продуктов products
id, category_id, product

2. Таблица характеристик features
id, name, in_filter

3. Таблица связей
product_id, feature_id, value

При запросе категории, вытягиваются все товары, все feature_id и value для создания массива вариантов свойств, а из features их названия.
А цену лучше хранить тоже в характеристике? или в таблице продукта?
 

Minor

Постоялец
Регистрация
16 Авг 2012
Сообщения
258
Реакции
110
Цену лучше отдельно, характеристики по сути опциональны - а цена желательна всегда
Если у товара нету вариантов, то в таблице с товарами, если есть то в таблице с вариантами.
 

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
320
Реакции
72
Цену лучше отдельно, характеристики по сути опциональны - а цена желательна всегда
Если у товара нету вариантов, то в таблице с товарами, если есть то в таблице с вариантами.
А за что отвечает поле in_filter?
 

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
320
Реакции
72
Включено в фильтре или нет, вдруг не все характеристики нужно в фильтр выводить.
Подскажите пожалуйста, как выглядит sql запрос на работу карты товара с фильтрами? Что с чем соединять что бы получить в оконце примеру товары с определенной характеристикой.
 

Minor

Постоялец
Регистрация
16 Авг 2012
Сообщения
258
Реакции
110
А как насчет установить Симплу (можно и Окай, но Симла проще) и сразу в ней смотреть все что нужно, потому что наверняка возникнут еще вопросы. Где поставить вывод запросов - я скажу :).
 

NOIP

Гуру форума
Регистрация
17 Фев 2008
Сообщения
320
Реакции
72
А как насчет установить Симплу (можно и Окай, но Симла проще) и сразу в ней смотреть все что нужно, потому что наверняка возникнут еще вопросы. Где поставить вывод запросов - я скажу :).
Да я думал может быть у вас уже есть установленная, и не затруднит скинуть распечатку запроса.
 

Minor

Постоялец
Регистрация
16 Авг 2012
Сообщения
258
Реакции
110
Да я думал может быть у вас уже есть установленная, и не затруднит скинуть распечатку запроса.
Да есть, только там в все товары без характеристик. Может на выходных смогу - но лучше поставьте, наверняка это не последний вопрос по организации товаров.
 
Сверху