@tvsjke
информация засекречена

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

Всем привет.

Исходные данные:

Есть интернет-магазин на Laravel (но это, по идее, не важно). И у каждого пользователя в личном кабинете есть настройки. Может быть несколько уровней вложенности. Настройки нужны для системы оповещения пользователей.

5a943a9173cbb302149491.png

Их нужно хранить и уметь эффективно работать с ними. Например, должна быть возможность быстро получить всех пользователей, у которых выбрано оповещение.

Я сделал таблицы settings (name, id_parent) и setting_user (user_id, setting_id, value).

Не могу объяснить почему, но такой вариант мне не нравится. Создавать две таблицы для каких-то несчастных настроек?
Может, просто в users добавить поле с типом json и хранить все настройки там? Но как тогда делать выборки по настройкам с разными условиями?

В общем, прошу у вас идей для реализации эффективного хранения и использования этих настроек.

Спасибо.
  • Вопрос задан
  • 53 просмотра
Решения вопроса 1
JhaoDa
@JhaoDa
LaravelRUS Team
MySQL 5.7.8 и новее умеет делать запросы по содержимому json-полей.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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