Ajout de liaisons nommées dans les models

This commit is contained in:
bglacial 2019-01-16 00:34:20 +01:00
parent ce12cf5988
commit f94136469f
3 changed files with 8 additions and 7 deletions

View File

@ -11,4 +11,4 @@ admin.site.register(Race)
admin.site.register(Relay)
admin.site.register(Rules)
admin.site.register(Team)
admin.site.register(TeamPilot)
admin.site.register(EngagedPilot)

View File

@ -8,6 +8,7 @@ from django.db import models
class Team(models.Model):
# Name of the team
name = models.CharField(max_length=30, default=None, blank=True, null=True)
comment = models.CharField(max_length=256, default=None, blank=True, null=True)
def __str__(self):
return self.name
@ -49,17 +50,17 @@ class Race(models.Model):
def __str__(self):
return self.name
class TeamPilot(models.Model):
class EngagedPilot(models.Model):
# Foreign keys to the team pilot and race
team = models.ForeignKey(Team, on_delete=models.CASCADE)
pilot = models.ForeignKey(Driver, on_delete=models.CASCADE)
race = models.ForeignKey(Race, on_delete=models.CASCADE)
team = models.ForeignKey(Team, related_name='team', on_delete=models.CASCADE)
pilot = models.ForeignKey(Driver, related_name='pilot', on_delete=models.CASCADE)
race = models.ForeignKey(Race, related_name='race', on_delete=models.CASCADE)
order = models.IntegerField(default=None, blank=True, null=True)
class Relay(models.Model):
# Name of the team
team_pilot = models.ForeignKey(TeamPilot, on_delete=models.CASCADE)
team_pilot = models.ForeignKey(EngagedPilot, related_name='relays', on_delete=models.CASCADE)
#Starting timestamp for the relay
relay_start = models.DateTimeField()
#ending timestamp for the relay

View File

@ -8,6 +8,6 @@ urlpatterns = [
path('relays/', ListRelayView.as_view()),
path('rules/', ListRulesView.as_view()),
path('teams/', ListTeamView.as_view()),
path('teampilots/', ListTeamPilotView.as_view()),
path('engagedpilots/', ListEngagedPilotView.as_view()),
url('race/(?P<raceid>\d+)/team/(?P<teamid>\d+)/relays', ListRelaysByRaceAndTeamView.as_view()),
]