За последние 24 часа нас посетили 22846 программистов и 1268 роботов. Сейчас ищут 840 программистов ...

Архитектура базы данных для интернет-магазина

Тема в разделе "PHP и базы данных", создана пользователем Exort, 15 окт 2019.

  1. Exort

    Exort Активный пользователь

    С нами с:
    30 апр 2016
    Сообщения:
    100
    Симпатии:
    2
    Друзья, доброго времени суток. За ранее большое спасибо за потраченное время.

    Преподаватель в университете дал курсач на тему "интернет-магазин", сказал чтобы система товаров была 1 в 1 как у сайта "Перекресток".
    Собственно ссылка на пример (https://www.perekrestok.ru/catalog/ovoschi-frukty-griby/frukty) (не реклама).

    Проблема в следующем:
    Мне удалось реализовать систему категорий и подкатегорий (бесконечная вложенность), но например у некоторых товаров есть "Плотность", у некоторых "Жирность", у некоторых вообще не вид товара а например "Вид кофе". То есть, у многих товаров есть как схожие параметры, так и уникальные, при этом они привязаны к каким-либо категориям. Я никак не понимаю, как организовать архитектуру такой базы данных? Чтобы были схожие параметры у некоторых товаров, а также уникальные..

    Большое спасибо! Если есть статьи /книги на эту тему, пожалуйста, дайте названия/ссылки..
     
  2. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Ну как вариант общие параметры привязывай к категории, частные к самим товарам.
    А вообще MySQL уже давно поддерживает тип поля JSON он хорошо подходит для хранения параметров товаров.
     
  3. Exort

    Exort Активный пользователь

    С нами с:
    30 апр 2016
    Сообщения:
    100
    Симпатии:
    2
    Спасибо за ответ, но JSONом не хочется пользоваться..
     
  4. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    почему?
     
  5. Exort

    Exort Активный пользователь

    С нами с:
    30 апр 2016
    Сообщения:
    100
    Симпатии:
    2
    Как минимум будут проблемы с фильтрами, хочется побольше динамики, у меня прост красный диплом, хочется сделать цивилизованно.. Это если 100+ параметров например будет, как это хранить? Может быть вы знаете книгу, где описываются различные архитектуры?
     
  6. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    если вы не вкурсе, то БД умеет переваривать / копаться в json, после посылать результат в серверную часть скриптов.
     
    #6 MouseZver, 16 окт 2019
    Последнее редактирование: 16 окт 2019
  7. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    1. Можно json. Последние версии MySQL и хз как давно PostrgeSQL умеют работать с json, фильтры сделать получится.
    2. Если всё-таки без json, то можно завести одну таблицу для общих характеристик, и для каждой категории отдельную таблицу для свойств, индивидуальных для этой категории.
     
  8. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328