Cómo modelar diferentes usuarios en Rails

Pregunta

Tengo un modelo de usuario con autorización y autenticación de lógica construida.

Ahora me doy cuenta de que tengo tres tipos diferentes de usuarios. Quiero almacenar información diferente sobre cada uno de ellos.

¿Cuál es la mejor manera de manejar esto en Rails?

Pensamientos basados ​​en la lectura actual.

He analizado STI pero, por lo que he leído, siento que no es apropiado porque terminaré con muchos campos NULOS en mi base de datos.

Lo ideal sería no duplicar la lógica de autenticación / autorización para cada uno de los tres tipos de usuarios.

Cada usuario también tendrá una funcionalidad diferente dentro de la aplicación.

Respuestas a la pregunta(2)

Su respuesta a la pregunta