Découvrir API Platform

Normaliser les relations

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Avec un groupe sur le parent et sur l'enfant, vous pouvez exposer des champs directement, et les afficher.
03:22

Transcription

Pour le moment, à chaque fois que vous allez récupérer une tâche, une « Task », vous allez vous retrouver avec une relation, ici, l'utilisateur en l'occurrence qui va être référencé avec les IRI. Vous savez, c'est les fameuses informations qui vous permettent avec une sous-requête, un « subrequest », d'aller récupérer ces informations. Oui, mais de temps en temps pour éviter de faire des sous-requêtes trop abusives, on pourrait se dire que notre service Web vient afficher certaines informations d'un utilisateur dont on va tout le temps avoir besoin. Je sais par exemple, que pour une tâche ici, je vais vouloir noter obligatoirement le « firstname » et le « lastname » de l'utilisateur et pourquoi pas, peut-être pas les autres propriétés, mais celle-ci, en tout cas, j'en ai besoin. Je vais pouvoir utiliser les groupes de Sérialisation pour réaliser cette partie-là. Alors, ça va se passer en 2 temps. D'abord dans ma «Task », ici, je vais référencer un groupe de Sérialisation qui va s'appeler « Task ». Celui-ci va me permettre de savoir, c'est le groupe qui me permet d'activer ou pas certaines informations, en plus, il dépend vraiment de « Task ». Donc, je sais et l'API Platform va savoir que c'est un groupe de Sérialisation qui fait partie de normalisation du groupe qui fait partie de « Task ». Maintenant, ce groupe-ci, je vais venir le référencer sur le « user ». Alors, ce qui est bien, c'est que je n'ai plus besoin de faire du « read » et du « write » ici, en l'occurrence, je pourrais simplement utiliser pour le coup, mon groupe de Sérialisation. Je vais quand même, juste le référencer comme ça. Je vais dire que ça dépend de « Task ». Alors, ce n'est pas tout, parce qu'il va aussi falloir, du coup, utiliser les groupes de Sérialisation de l'autre côté, sur mon entité qui est reliée. Et puis, sur cette entité reliée, je vais pouvoir lui définir avec une annotation de groupe, quelles sont les propriétés que je veux afficher. Ces propriétés seront maintenant incluses directement dans la réponse de « Task » pour y avoir accès tout de suite, sans avoir à faire une sous-requête pour récupérer ces informations. Ça va être très intéressant pour nous, on va, donc, ici, normaliser les relations et normaliser les informations des relations. Le groupe, on a dit que c'était « Task », donc je sais que quand je vais faire une requête vers « Task », je vais m'attendre dans son groupe de désérialisation, à récupérer en fait, ici, « Task » et donc, je vais avoir normalisé à l'intérieur de ma réponse, cette information. Et maintenant, que vous avez ajouté ça, ce n'est pas très compliqué, il suffit simplement de référencer sur « Task » le groupe que l'on souhaite. Donc, on va référencer là, un nouveau groupe, je vais l'activer sur la relation et puis, dans la relation, je vais venir définir quels sont les champs que je souhaite afficher sur ma relation à la requête. Et maintenant, quand vous aller envoyer une requête, voilà ce qui va se passer. On va récupérer toujours, avec un « at_id » ici et l'utilisateur complet, on peut aller le chercher, mais surtout vous allez avoir le type « user », c'est l'objet et ensuite, vous allez avoir les deux propriétés que vous avez demandées en exposition, directement dans la réponse de « Task ». Ça, c'est clairement très utile pour optimiser un petit peu les performances et pour éviter d'avoir affaire sans arrêt du sous-requête. Là, on va pouvoir choisir précisément avec un groupe de Sérialisation, ce que l'on veut afficher ou pas, sur les objets qui sont liés. Alors, je vous laisse imaginer l'implémentation sur une très grosse application, évidemment, il faudrait beaucoup de configurations, et c'est comme ça que ça marche. Ici, vous allez pouvoir travailler avec des relations et surtout, récupérer des informations et les afficher tout de suite dans le corps de votre entité, ce qui est une très bonne chose.

Découvrir API Platform

Prenez en main le framework API Platform. Voyez comment effectuer sa configuration, créer des services web de données, et réalisez ainsi efficacement une application complète.

3h24 (54 vidéos)
Aucun commentaire n´est disponible actuellement

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !