diff --git a/tournaments/migrations/0078_event_creator_full_name.py b/tournaments/migrations/0078_event_creator_full_name.py new file mode 100644 index 0000000..71f1655 --- /dev/null +++ b/tournaments/migrations/0078_event_creator_full_name.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.11 on 2024-07-27 09:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tournaments', '0077_alter_devicetoken_value'), + ] + + operations = [ + migrations.AddField( + model_name='event', + name='creator_full_name', + field=models.CharField(blank=True, max_length=200, null=True), + ), + ] diff --git a/tournaments/migrations/0079_alter_event_creator.py b/tournaments/migrations/0079_alter_event_creator.py new file mode 100644 index 0000000..f2c1bf5 --- /dev/null +++ b/tournaments/migrations/0079_alter_event_creator.py @@ -0,0 +1,20 @@ +# Generated by Django 4.2.11 on 2024-07-27 09:42 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('tournaments', '0078_event_creator_full_name'), + ] + + operations = [ + migrations.AlterField( + model_name='event', + name='creator', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/tournaments/models/custom_user.py b/tournaments/models/custom_user.py index 743110c..a05a246 100644 --- a/tournaments/models/custom_user.py +++ b/tournaments/models/custom_user.py @@ -52,3 +52,6 @@ class CustomUser(AbstractUser): def event_count(self): return len(self.event_set.all()) + + def full_name(self): + return f"{self.first_name} {self.last_name}" diff --git a/tournaments/models/event.py b/tournaments/models/event.py index cd070d5..bed7bef 100644 --- a/tournaments/models/event.py +++ b/tournaments/models/event.py @@ -6,18 +6,20 @@ class Event(models.Model): id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=True) club = models.ForeignKey(Club, on_delete=models.SET_NULL, null=True, blank=True) creation_date = models.DateTimeField() - creator = models.ForeignKey(CustomUser, blank=True, null=True, on_delete=models.CASCADE) + creator = models.ForeignKey(CustomUser, blank=True, null=True, on_delete=models.SET_NULL) name = models.CharField(max_length=200, null=True, blank=True) federal_tournament_data = models.JSONField(null=True, blank=True) - #court_count = models.IntegerField(null=True, blank=True) tenup_id = models.CharField(max_length=20, null=True, blank=True) - #group_stage_format = models.IntegerField(default=FederalMatchCategory.NINE_GAMES, choices=FederalMatchCategory.choices, null=True, blank=True) - #round_format = models.IntegerField(default=FederalMatchCategory.NINE_GAMES, choices=FederalMatchCategory.choices, null=True, blank=True) - #loser_round_format = models.IntegerField(default=FederalMatchCategory.NINE_GAMES, choices=FederalMatchCategory.choices, null=True, blank=True) + creator_full_name = models.CharField(max_length=200, null=True, blank=True) def __str__(self): return self.display_name() + def save(self, *args, **kwargs): + if self.creator: + self.creator_full_name = self.creator.full_name() + super(Event, self).save(*args, **kwargs) + def display_name(self): if self.club and self.club.name and self.name: return self.club.acronym + " " + self.name