@PRodion

Лучшее решение для хранения атрибутов?

Подскажите, как лучше сделать. Есть сервисы, а у сервисов есть функции. Например:

Поддерживаемые страны:
— Россия
— Беларусь
— и т.д

Сейчас реализовано только указывание значения функции (Россия, Беларусь). Есть необходимость группировать значения функций по группам (Поддерживаемые страны). Как это лучше сделать, особенно если учитывать, что в дальнейшем планирую прикрутить и фильтр на основе этих параметров?

Таблица:

services
--- id
--- slug
--- name
--- и т.д

Таблица:

features
--- id
--- name
--- и т.д

Таблица:

service_feature
--- id
--- service_id
--- feature_id

Сейчас реализация максимально упрощённая. Ничего лишнего. Требуется добавить как минимум группы особенностей. Собственно, как это лучше сделать, чтобы потом не наткнуться на подводные камни?

1. Писать в эту же таблицу?
2. Записывать в пивот таблицу?
3. Сделать отдельно таблицу?

Хотелось бы найти золотую середину. Чтобы это было удобно, сильно не дублировала данные, но и не плодило множество запросов к базе. Желательно, чтобы это возможно было красиво вывести во View. Любые предложения?

Хотя бы так, но я думаю можно и лучше:

foreach ($service->features as $feature) {
    $feature->group_name

    foreach ($feature->values as $value) {
        $value->name
    }
}
  • Вопрос задан
  • 197 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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