Multiple User Types - Michael Hartl's Tutorial

Hi all,

Can I have your opinions about the implementation of multiple user types that can login and play in different roles?

What do you think about the answer on stack overflow?



I would first question the basic premise of multiple user types. Is
that really necessary? Can a user every be of both types? Perhaps
the requirement is not for different types of users but for users with
different roles, meaning that a user can perform the role of a
publisher or a subscriber (in the example given) or perhaps even both.
In which case the requirement is just for a single user table with
something like cancan to provide roles.


Hi Colin,

Thanks for your reply.
Actually I don’t want each user to have multiple types. Only 1 type per user is ok for me.

I can satisfy that by using polymorphic relations. I have 1 db table for common user attributes(email,name,password) and 2 more tables for the 2 user types(admin,manager)

But I’m confused while implementing the SessionController.

Each user type will have different login and register forms.

Do you think using a single SessionController for the login/logout operations for both user types is fine (with different session keys)?