Découvrir API Platform

Rendre un objet disponible

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Cinq routes sont disponibles pour votre entité. Vous pouvez déjà travailler avec un système à jour. Mettez également en place l'entité sous forme de base de données.
04:17

Transcription

Alors ce qui est intéressant ici, c’est que vous avez rendu disponible votre objet directement en ajoutant de l’annotation. Ça veut aussi dire que votre objet est complètement disponible sur votre API. Votre API actuellement pointe sur « api/ » comme ça. Et ici, si vous ouvrez cette partie-là de la documentation, vous remarquerez bien évidemment qu’ici on a accès et on peut travailler tout de suite avec notre objet. Alors ça veut dire que concrètement, si j’utilise le « /tasks », ça va me permettre de récupérer. C’est bien parce que vous voyez qu’ici, notre objet s’appelle « Task » mais c’est vrai qu’on est en train de gérer en fait une collection et donc il nous a rajoutés automatiquement les « s ». Alors tout ça s’est fait absolument automatiquement par API Platform. Il faut le garder à l’esprit, c’est simplement vous, en définissant votre entité qui avez défini qu’on a la possibilité de travailler avec ces différentes routes. Alors, ces différentes routes elles sont assez classiques. Le GET permettant de récupérer une collection, vous avez en plus l’aide en face, c’est génial. Le POST permettant donc d’envoyer une collection, de soumettre une collection. Voyez qu’ici, effectivement on a bien aussi les informations, le modèle, l’exemple, etc. La possibilité d’en supprimer une, d’en récupérer une seule ou alors d’en mettre à jour une seule. Donc vous pouvez en fait utiliser ces cinq routes-là pour travailler soit avec la collection complète, soit avec une seule entité sans aucun problème. Partez aussi d’un autre principe, c’est que de temps en temps, ça ne va pas se rafraichir quand vous allez être sur le « /api ». Donc je vous conseille vivement d’aller travailler sur « app_dev.php » qui sera beaucoup plus intéressant pour vous parce que celui-ci est rechargé automatiquement, il n’est pas géré par le cache. Donc il n’y a pas de cache sur ce contrôleur-là, le contrôleur de « dev ». Pensez bien plutôt à travailler sur le contrôleur de « dev » qu’à travailler sur le contrôleur de « front ». Si je vous montre dans le code concrètement, vous avez dans le dossier « web », dans votre API Platform, un fichier « app » et un fichier « app.dev » et le « app.dev », vous verrez qu’effectivement il tourne sur un « Kernel dev » et avec un « flag true » pour le « debug ». Il n’y a pas ici de cache sur l’environnement de « dev ». Par contre effectivement, sur l’environnement de « prod », on a du cache et ce cache-là va être généré automatiquement par Symfony, par API Platform. Il faut faire très attention à ça. Si vous ne voyez pas des choses apparaitre alors que vous avez bien renseigné les informations, ça veut certainement dire qu’il y a du cache et que vous ne le voyez pas. Pensez bien ici à travailler avec « app_dev » et pas avec « app ». Si toutefois vous voulez tester le contrôleur de production, le contrôleur de « front », « app.php », la seule chose que vous aurez à faire, ce sera de recharger le cache. Et pour recharger le cache, vous allez simplement vider les répertoires qui se trouvent dans « var », « var/cache » ici, si vous avez des choses dedans, on va les supprimer et « var/log » pareil parce que ça prend beaucoup de places les logs. Donc n’hésitez pas à supprimer ce qui se trouve dans les répertoires et là vous aurez une documentation qui sera à jour automatiquement. Pour le rendre disponible cet objet, vous avez vu que c’est extrêmement simple, il suffit d’ajouter l’annotation et là, on a accès à ces cinq routes-là et on va pouvoir travailler convenablement avec une entité. Elle est actuellement disponible et vous pouvez le vérifier simplement en faisant « task ». Alors vous allez avoir un problème évidemment parce qu’il ne va pas réussir à trouver les informations. Il va nous rester une dernière chose à faire évidemment, c’est que la base de données n’étant pas à jour, on va devoir mettre à jour la base de données. On va utiliser « doctrine:schema: » et cette fois-ci, on va lui dire « create ». Alors, vous allez voir qu’il va créer le schéma. Vous pourrez vérifier dans la base de données que votre schéma est bien disponible. Donc toujours pareil, on va aller utiliser sa base de données pour regarder si on a bien le schéma dans la base qui a été créée. Effectivement, on a bien le schéma qui a été créé par « Doctrine ». Vous voyez qu’il y a un peu des commandes « Doctrine » pour un peu tout. Souvenez-vous bien de celui-là, « doctrine:schema:create ». Il va falloir cette commande-là, la répercuter à chaque fois qu’on va ajouter des entités nouvelles. Et puis maintenant, on va recharger effectivement et là on rend bien tout disponible. Donc effectivement, quand on va aller sur « Task », on va bien avoir toute l’information et si jamais on n’a aucune information en base de données, bah on aura de la doc. C’est quand même extrêmement bien fait. Vous voyez que là, tout est automatique, tout est sous contrôle.

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 !