has_and_belongs_to_many for 3 entities


in my app, I have users, groups, and grouproles.

Each user can be a member of multiple groups. This I have achieved by
imposing has_and_belongs_to_many relationship between users and groups
(i.e. creating another table groups_users).

However, each user should have a grouprole for each group he/she
participates in.
This means that for every user-group pair there should be a grouprole.
Could you help me out with solving this, I don't know how to add this
relationship between users, groups, and gourproles.

thanks :slight_smile:

What you need is a Membership model that associates a user to a group,
instead of associating them directly using a HABTM association.

The membership would point to the user, group and also contain that
member role in the group.

oh cool, that's much more straightforward!
Thanks Mauricio!

MaurĂ­cio Linhares wrote: