Sérialiseur Epreuve¶
- class api.serializers.epreuve.EpreuveSerializer(*args, **kwargs)¶
Bases :
ModelSerializerSérialiseur pour le modèle Epreuve.
Gère la sérialisation des épreuves avec leurs relations aux disciplines et événements. Inclut une validation pour éviter les doublons d’épreuves dans une même discipline.
- discipline¶
Données complètes de la discipline (lecture seule)
- Type:
DisciplineSerializer
- discipline_id¶
ID de la discipline pour l’écriture
- Type:
PrimaryKeyRelatedField
- evenement¶
Données de l’événement associé (lecture seule)
- evenement_id¶
ID de l’événement pour l’écriture (optionnel)
- Type:
PrimaryKeyRelatedField
- validate(data)¶
Valide les données de l’épreuve pour éviter les doublons.
Vérifie qu’aucune épreuve avec le même libellé n’existe déjà pour la même discipline.
- Paramètres:
data (dict) – Données à valider
- Renvoie:
Données validées
- Type renvoyé:
dict
- Lève:
serializers.ValidationError – Si une épreuve similaire existe déjà
*Fonctionnalités*
Relations optimisées : Affichage complet de la discipline et de l’événement
Validation d’unicité : Évite les doublons d’épreuves par discipline
Champs séparés lecture/écriture pour les clés étrangères
Assignation optionnelle à un événement
*Validation spéciale*
La méthode validate() vérifie qu’aucune épreuve avec le même libellé n’existe déjà pour la même discipline.