from django.db import models from django.conf import settings class Club(models.Model): name = models.CharField(max_length=255) website = models.URLField(blank=True) administrators = models.ManyToManyField(settings.AUTH_USER_MODEL, related_name='administered_clubs') def __str__(self): return self.name class Team(models.Model): name = models.CharField(max_length=255) club = models.ForeignKey(Club, on_delete=models.CASCADE, related_name='teams') head_coach = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, null=True, blank=True, related_name='coached_teams') assistant_coaches = models.ManyToManyField(settings.AUTH_USER_MODEL, related_name='assisted_teams', blank=True) parent_team = models.ForeignKey('self', on_delete=models.SET_NULL, null=True, blank=True, related_name='child_teams') def __str__(self): return self.name