Я начал писать приложение с использованием Declarative_authorization (http://github.com/stffn/declarative_authorization), но теперь мне интересно, если это правильный подход.
В своем приложении я давал некоторым пользователям роль «клиент», некоторым роль «администратор», а другую роль «суперадмин». Это работало нормально, но теперь я понимаю, что мне нужны некоторые поля на моделях, которые являются специфическими для «клиента»
Superadmin = администратор редактора
Admin = редактор клиента
Customer = имеет дополнительные атрибуты, такие как «аватар»
С этого момента я начал создавать модель Customer, унаследованную от User. Однако в этом случае клиенты всегда будут играть роль «клиента», а только клиенты будут иметь эту роль. Это казалось немного странным.
Полагаю, я ищу руководство для этого сценария.