I am creating an app with 3 types of Users which could end up with a 4th...
- Admin
- Provider
- Member (patient)
The tricky part is each share some common attributes such as 'first_name' and 'last_name', but will have more attributes that differ. If they all share the same 'User' table, I will have too many columns 'nil' which doesn't feel like good practice.
What would be a good way to go about this? Is there a way to have role-based model relationships?
My plan is to use Devise and Pundit, Postgres for DB.