mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
feat: Sauvegarde des compétences d'un élève [#16]
This commit is contained in:
@ -116,6 +116,22 @@ class PaymentMode(models.Model):
|
||||
def __str__(self):
|
||||
return f"{self.mode.label} - {self.get_type_display()}"
|
||||
|
||||
class Competency(models.Model):
|
||||
name = models.TextField()
|
||||
end_of_cycle = models.BooleanField(default=False, null=True, blank=True)
|
||||
level = models.CharField(max_length=50, null=True, blank=True)
|
||||
category = models.ForeignKey('Common.Category', on_delete=models.CASCADE, related_name='competencies')
|
||||
|
||||
establishments = models.ManyToManyField(
|
||||
'Establishment.Establishment',
|
||||
through='School.EstablishmentCompetency',
|
||||
related_name='competencies',
|
||||
blank=True
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
class EstablishmentCompetency(models.Model):
|
||||
"""
|
||||
Relation entre un établissement et une compétence.
|
||||
@ -123,7 +139,7 @@ class EstablishmentCompetency(models.Model):
|
||||
"""
|
||||
establishment = models.ForeignKey('Establishment.Establishment', on_delete=models.CASCADE)
|
||||
competency = models.ForeignKey(
|
||||
'Common.Competency', on_delete=models.CASCADE, null=True, blank=True,
|
||||
'School.Competency', on_delete=models.CASCADE, null=True, blank=True,
|
||||
help_text="Compétence de référence (optionnelle si custom)"
|
||||
)
|
||||
custom_name = models.TextField(null=True, blank=True, help_text="Nom de la compétence custom")
|
||||
|
||||
Reference in New Issue
Block a user