Nelius
кипарис во дворе
Разные типы пользователей, проектирование таблиц, идеи
И снова здрасвтвуйте!) В эфире шоу "Надеюсь я Вам еще не надоел!"
Есть проект с регистрацией пользователей. Пользователь может быть различных типов (Тренер, Спортсмен).
После регистрации пользователю автоматически присваивается тип Юзер, но он может подать заявку если он Тренер или Спортсмен чтобы его анкета стала таковой (поимела другой тип).
То есть фактически есть 3 типа пользователей: Тренер, Спортсмен, Юзер обычный (наблюдатель).
У всех этих типов есть общие данные такие как: Имя, Фамилия, Ник, E-mail, Пол, Возраст итд...
У пользователей типа Тренер и Спортсмер есть также дополнительные данные в анкете, например, для Спортсмена: Рост, Вес, и всякие всякие специфичные для конкретного спортсмена показатели. Следовательно имеем что Спортсмены делятся на подтипы: Футболист, Тенисист, Хокеист, Легкоатлет, Шахматист (в общем я не особо силен как их правильно всех называть).
Это так сказать предистория... А задача вот в чем... как хранить эти данные? Раньше была у меня просто таблица Users и вопроса такого не возникало.
В данной ситуации таблица Users тоже будет и я думаю что она должна содержать все данные общие для всех типов пользователей...
А вот как хранить специфичные для различных типов данные? В отдельных таблицах?
Вопрос рассматривается с условием того что эти данные будут часто отображаться пользователям (при просмотре анкет) и не так часто изменяться. Плюс возможно добавление нового типа пользователя в процессе работы сайта.
Может кто уже проектировал подобное? Как лучше сделать? Прошу пинка в правильном направлении.
Спасибо!
P.S.0 Типы = Роли
И снова здрасвтвуйте!) В эфире шоу "Надеюсь я Вам еще не надоел!"

Есть проект с регистрацией пользователей. Пользователь может быть различных типов (Тренер, Спортсмен).
После регистрации пользователю автоматически присваивается тип Юзер, но он может подать заявку если он Тренер или Спортсмен чтобы его анкета стала таковой (поимела другой тип).
То есть фактически есть 3 типа пользователей: Тренер, Спортсмен, Юзер обычный (наблюдатель).
У всех этих типов есть общие данные такие как: Имя, Фамилия, Ник, E-mail, Пол, Возраст итд...
У пользователей типа Тренер и Спортсмер есть также дополнительные данные в анкете, например, для Спортсмена: Рост, Вес, и всякие всякие специфичные для конкретного спортсмена показатели. Следовательно имеем что Спортсмены делятся на подтипы: Футболист, Тенисист, Хокеист, Легкоатлет, Шахматист (в общем я не особо силен как их правильно всех называть).
Это так сказать предистория... А задача вот в чем... как хранить эти данные? Раньше была у меня просто таблица Users и вопроса такого не возникало.
В данной ситуации таблица Users тоже будет и я думаю что она должна содержать все данные общие для всех типов пользователей...
А вот как хранить специфичные для различных типов данные? В отдельных таблицах?
Вопрос рассматривается с условием того что эти данные будут часто отображаться пользователям (при просмотре анкет) и не так часто изменяться. Плюс возможно добавление нового типа пользователя в процессе работы сайта.
Может кто уже проектировал подобное? Как лучше сделать? Прошу пинка в правильном направлении.
Спасибо!
P.S.0 Типы = Роли