Aller au contenu

Serializers

Cette section décrit les serializers utilisés pour convertir les instances de modèles en représentations JSON/HTTP et vice versa.


Description générale

Les serializers permettent de transformer les objets complexes Django en types Python natifs, puis en formats comme JSON pour les API. Ils permettent aussi la validation et la désérialisation des données reçues.


Liste des serializers définis

Chaque serializer hérite de serializers.ModelSerializer et est associé à un modèle Django, incluant tous les champs du modèle (fields = '__all__').

Serializer Modèle associé Description
ItemSerializer Item Sérialisation des items
CostTypeSerializer CostType Sérialisation des types de coûts
CriteriaSerializer Criteria Sérialisation des critères
ConstraintTypeSerializer ConstraintType Sérialisation des types de contraintes
ConstraintSerializer Constraint Sérialisation des contraintes
EnergySerializer Energy Sérialisation des types d’énergie
HeaterSerializer Heater Sérialisation des chauffages
InsulationTypeSerializer InsulationType Sérialisation des types d’isolation
InsulationSerializer Insulation Sérialisation des isolations
DepartmentSerializer Department Sérialisation des départements
SocialAssistanceSerializer Social_assistance Sérialisation des aides sociales
SupplierSerializer Supplier Sérialisation des fournisseurs
DepartmentalCostSerializer Departmental_cost Sérialisation des coûts départementaux

Exemple type d’un serializer

from rest_framework import serializers
from .models import Item

class ItemSerializer(serializers.ModelSerializer):
"""Serializer for the Item model."""
class Meta:
model = Item
fields = 'all'

Chaque serializer rend possible une communication fluide entre l’API et le client, en assurant la conversion correcte des données et leur validation.