Как моделировать объекты базы данных, которые имеют несколько общих атрибутов? - PullRequest
0 голосов
/ 28 марта 2020

в SQL, как я могу моделировать что-то вроде пользователя, который может быть бухгалтером, менеджером или работником, где они имеют разные атрибуты в зависимости от своей роли, но имеют одинаковые стандартные атрибуты пользователя (например, имя пользователя, пароль, адрес электронной почты) , разрешения и др. c). Например, у бухгалтера есть DailyBooks, а у рабочего нет. Я думал о чем-то вроде этого:

htt_ps: //i.st_ack.imgur.com/pzoDv.png (не может публиковать изображения)

Но users будет иметь по крайней мере 2 NULL поля всегда (например, менеджер не может быть ни работником, ни бухгалтером). Есть ли лучший способ сделать это? Я думал о создании таблиц managers, accountants и workers с пользовательскими атрибутами и без выделенной таблицы users, но что если мне нужно использовать стороннюю библиотеку для аутентификации пользователя, такую ​​как devise в RoR ? У них есть таблица users, и вы можете расширить ее позже, поэтому я думаю, что мне нужна эта таблица.

Есть идеи? Спасибо.

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