Les problèmes que nous réglons
-
Des entités Doctrine exposées telles quelles : chaque changement de schéma casse l'API.
-
Des groupes de sérialisation impossibles à suivre.
-
Des requêtes N+1 sur chaque collection.
-
Une documentation OpenAPI qui ne correspond pas au comportement réel.
-
Des fichiers créés par root dans les conteneurs de développement.
Ce que nous mettons en place
-
Des ressources API en DTO, séparées des entités.
-
Des providers, processors et mappers testables.
-
Une documentation OpenAPI fidèle.
-
Un environnement Docker et FrankenPHP propre.
Articles
API Platform : un ComparisonFilter lisible dans OpenAPI
ComparisonFilter décrit ses opérateurs en objet jusqu'à la 4.4.2, en chaîne ensuite. Les typer avec openApi, valider avec constraints, sans le piège de schema.
Mis à jour le 02 oct. 20264 min de lecture
API Platform : séparer entités Doctrine et ressources API
Exposer ses entités Doctrine lie la base au contrat d'API. Ressources DTO, stateOptions et providers explicites gardent pagination, filtres et extensions.
Mis à jour le 02 oct. 202611 min de lecture
API Platform et ObjectMapper : les pièges des ressources DTO
#[Map] ignoré sans source, relations, IRI genid, PATCH qui efface un champ. Les pièges d'ObjectMapper avec API Platform 4.4 et 5.0, vérifiés dans le code.
Mis à jour le 02 oct. 202611 min de lecture