from django.db import models from django.utils.translation import gettext_lazy as _ from api.core.models.trackable_model import TrackableModel class UserTeamRole(TrackableModel): """ Model representing the association of users, teams, and roles within the user account system. This model links a user to a specific team with a designated role. """ user = models.ForeignKey( "users.User", on_delete=models.CASCADE, related_name="team_roles", verbose_name=_("utilisateur"), ) team = models.ForeignKey( "users.Team", on_delete=models.CASCADE, related_name="user_roles", verbose_name=_("équipe"), ) role = models.ForeignKey( "users.Role", on_delete=models.CASCADE, related_name="user_teams", verbose_name=_("rôle"), )