У меня разные роли в приложении Laravel в качестве врача, пациента, администратора. У каждого из них есть различная информация, так как у пациента есть информация о группе крови, поле, инфекции и т. Д. (Во многих других областях), но у врача и администратора их не будет. У доктора будут поля, недоступные пациенту и администратору. Так как же я могу лучше хранить такую информацию в базе данных? (Я хотел бы также получить информацию на основе этих полей).
- Я думал о создании новой таблицы
user_meta
и добавлении столбцов как
user_id
, key
, value
.
- Второй вариант заключается в том, чтобы поле в таблице
users
было равно meta
с объектом JSON, который будет хранить всю информацию о пользователе
Первый подход хорош для поиска, но плох для большой записи, а второй хорош для огромной записи, но плох для поиска. Так как ты думаешь, есть ли другой подход?