from django.db import models
class Saison(models.Model):
nom = models.CharField(max_length=100)
annee = models.PositiveIntegerField()
def __str__(self):
return self.nom
class Pilote(models.Model):
nom = models.CharField(max_length=100)
vehicule = models.ForeignKey('Vehicule', on_delete=models.CASCADE)
def __str__(self):
return self.nom
class Vehicule(models.Model):
marque = models.CharField(max_length=100)
modele = models.CharField(max_length=100)
annee_fabrication = models.PositiveIntegerField()
def __str__(self):
return f"{self.marque} {self.modele}"
class Course(models.Model):
nom = models.CharField(max_length=100)
circuit = models.CharField(max_length=100)
saison = models.ForeignKey(Saison, on_delete=models.CASCADE)
image = models.ImageField(upload_to='course_images')
def __str__(self):
return self.nom
class Article(models.Model):
titre = models.CharField(max_length=100)
contenu = models.TextField()
date_publication = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.titre
class Resultat(models.Model):
pilote = models.ForeignKey(Pilote, on_delete=models.CASCADE)
course = models.ForeignKey(Course, on_delete=models.CASCADE)
position_arrivee = models.PositiveIntegerField()
position_depart = models.PositiveIntegerField()
def __str__(self):
return f"{self.pilote} - {self.course}"
class Participation(models.Model):
saison = models.ForeignKey(Saison, on_delete=models.CASCADE)
course = models.ForeignKey(Course, on_delete=models.CASCADE)
pilotes = models.ManyToManyField(Pilote)
def __str__(self):
return f"{self.saison} - {self.course}"