Задать вопрос
@flammerman
Web Developer / И фронт и сервер

Как можно спроектировать базу данных интернет магазина с вариантами товаров?

Доброго времени суток.

Может кто подсказать схему БД онлайн шопа с моделью EAV и возможностью комбинировать характеристики товаров в дополнительные сущности, которые могут иметь отдельную цену.

Система простая донельзя, но что-то туплю. Допустим у нас есть размеры товаров (колец) 15,16,17,18,...25 пускай, фишка в том что они могут иметь разную цену (расход драг.металла и другие причины ведомые только производителю). Конечно можно тупо создать одну дополнительную таблицу, где грубо прописать товарИД, размер, цена, это круто, но что делать если нужно скомбинировать еще с любой другой характеристикой, допустим с текстовым полем "камни". Уже получается другой вариант: Размер, драг.камень, цена.

Магазину 4 года, и сделан в комбинации MODx EVO + костыли. На практике такие варианты будут знаю точно, работа не пропадет даром. И да я понимаю, что делать очередной шоп на Laravel для многих не имеет смысла, проще скачать opencart или битрикс купить, но там будут другие заморочки (изначально хотели на opencart поставить, не подошел), от этого никуда не дется.

В гугле не забанили, гуглю как могу, но в основном простые схемы попадаются. Либо все характеристики вообще в одной таблице products, либо модель EAV, но при этом нет вариантов с разными ценами. В общем нужна помощь, консультация, моральная поддержка =). Ссылка на мою схему: www.laravelsd.com/share/ZjzprC (если что ее можно форкнуть и править если кому надо). Ее можно не брать за основу, просто набросал.
  • Вопрос задан
  • 198 просмотров
Подписаться 1 Простой 14 комментариев
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
SilenceOfWinter
@SilenceOfWinter
та еще зажигалка...
грубо говоря:
products (id, name) - товары
features (id, name) - характеристики
feature_values (id, feature_id, value) - значения характеристик
product_skus (id, product_id, name, price, qty) - артикулы
sku_features (sku_id, feature_id, feature_value_id) - характеристики артикула
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы