@alex_belouss

Как реализовать свойства для разных товаров в интернет магазине?

Есть интернет магазин одежды, в каждом товаре есть свойства, платья свои, у рубашек свои, у сумок свои как на картинке например:
c1e9dbd6aa894ba9af2a215ab3349dd2.jpg

Как правильно реализовать это при добавлении? Просто добавить эти поля к таблице с товарами не вариант, как можно выводить нужные параметры при выборе категории и при этом все это хранилось отдельно от самих товаров?
  • Вопрос задан
  • 179 просмотров
Пригласить эксперта
Ответы на вопрос 3
qonand
@qonand
Software Engineer
либо использовать документо-ориентированную базу данных либо EAV
Ответ написан
Комментировать
@MadridianFox
Web-программист, многостаночник
Посмотрите в сторону EAV. Это подход, когда у вас в таблице товаров только самые базовые характеристики, такие как наличие, цена, а специфические хранятся в отдельной таблице, где каждая строка это одно свойство. Ну и ещё одна таблица для названий характеристик. Примерно вот так:
goods{id, name, price}
attribute{id, name}
attribute_value{id, id_attr, id_good, value}

Тут возможны некоторые варианты связанные с типом данных атрибута. Т.е. может быть одна таблица со значениями атрибутов и в ней есть поля как для строкового значения, так и для числового и даты например. А можно иметь по одной таблице на тип.
Ответ написан
Комментировать
@tvsjke
информация засекречена
Таблица products
id name
1 айфон
3 негр

Таблица options
id name
1 белый
3 круглый
4 черный

Таблица options_to_products
id_product id_option
1 4
1 3
3 1

Как-то так, если я апрвильно понял вопрос
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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