Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
E-commerce #9 : Produit serialisable
On etend la classe Produit avec la serialisation JSON. Le problème avec Decimal, c'est que json.dumps() ne sait pas le serialiser. La solution : convertir le prix en string dans to_dict(), ce qui preserve la precision exacte.
Exemple du problème : json.dumps(Decimal('29.99')) # TypeError ! json.dumps(str(Decimal('29.99'))) # '"29.99"' -> OK
Ajoute a la classe Produit : - to_dict() : retourne un dict avec le prix en string - from_dict(cls, data) : reconstruit depuis un dict - to_json() : retourne le JSON string via json.dumps(self.to_dict()) - from_json(cls, json_str) : reconstruit depuis un JSON string