Как хранить метаинформацию пользователя для другой роли пользователя в базе данных laravel - PullRequest
0 голосов
/ 31 марта 2019

У меня разные роли в приложении Laravel в качестве врача, пациента, администратора. У каждого из них есть различная информация, так как у пациента есть информация о группе крови, поле, инфекции и т. Д. (Во многих других областях), но у врача и администратора их не будет. У доктора будут поля, недоступные пациенту и администратору. Так как же я могу лучше хранить такую ​​информацию в базе данных? (Я хотел бы также получить информацию на основе этих полей).

  • Я думал о создании новой таблицы user_meta и добавлении столбцов как user_id, key, value.
  • Второй вариант заключается в том, чтобы поле в таблице users было равно meta с объектом JSON, который будет хранить всю информацию о пользователе

Первый подход хорош для поиска, но плох для большой записи, а второй хорош для огромной записи, но плох для поиска. Так как ты думаешь, есть ли другой подход?

1 Ответ

0 голосов
/ 31 марта 2019

Второй метод также неплох для поиска.Сохраняйте значения в формате json {пол: "мужской", кровь: "O +"} ......

В Laravel уже есть встроенный форматированный формат, который поможет вам найти такие данные, например, $ value-> данные [ 'пол'];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...