Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

Découvrir API Platform

Garantir la validité

Testez gratuitement nos 1344 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Les nombreuses règles de validation garantissent l'intégrité de votre base de données. Ainsi, vous pourrez valider vos entités en toute sécurité.
05:15

Transcription

Donc, nous l'avons dit pour garantir qu'il y a bien une validation qui est correcte, il va falloir, bien entendu, aller ajouter, par exemple, un « NotBlank » absolument partout. Par exemple, sur le « time », sur la « priorité », et puis, bien évidemment, ici, sur l'utilisateur, puisque l'utilisateur c'est pareil, on doit aussi l'ajouter. Tout ça, ça doit être envoyé, on le sait, c'est obligatoire. Maintenant, vous pourriez aussi vous dire que vous voulez utiliser des types particuliers. Alors, bien entendu, pour le moment, on n'a pas grand chose, il faudra aller regarder un petit peu ce qui est possible. Notamment, regardez pour le « Number Constraints » qu'on a là, on pourrait s'attendre à un « Range ». Alors, ça, c'est très intéressant, si, par exemple, on a envie de mettre en place une assertion. Là, je vais vous le montrer, puisqu'il est très sympa, celui-là, une assertion sur la priorité. Alors, notre priorité pour le moment, c'est un type « string », on va mettre un type « integer » et on va devoir reconstruire le modèle en conséquence. Donc, vous allez enregistrer ça, vous allez reconstruire votre modèle, pour que ça soit maintenant « integer ». Vous allez vérifier en base de données qu'effectivement, la priorité c'est bien devenue un « integer », vous pourriez avoir une structure de votre base, dont la priorité étant « integer ». Ce qui fait qu'on va pouvoir utiliser ici, par exemple, une assertion qui va être une assertion de « Range » et qui va nous permettre de définir que l'on souhaite ici, obtenir une assertion entre telle et telle valeur. Par exemple, ça pourrait être compris, par exemple entre 0 et 10. Donc, 0 étant le minimum, pas de priorité et 10 étant le maximum de priorité. Attention, essayez de faire ça proprement. Sachant que vous avez, tout à fait, le droit, bien entendu, de venir travailler sur les différentes insertions et d'en ajouter autant que vous souhaitez. Alors maintenant, on va tester ça. On va ici valider, donc là, il va nous dire qu'on a bien « name », donc là, on va avoir un problème. On va voir, qu'effectivement, on a des petits soucis, la priorité, on vous dit que ça ne peut pas être « Blank », et le « time » ne peut pas être « Blank » non plus. Donc là, on le sait maintenant, donc, on va ajouter le « time ». On sait que le « time », ici, ça va être par exemple, 10 minutes et puis on va ajouter une priorité. Donc, « priority » et cette priorité, on va la fixer avant. Ce qui logiquement, devrait fonctionner sans problème. Mais on vous dit que ce n'est pas possible. Vous pouvez allez jusqu'à 10 ou moins. Alors, toutes ces règles vous ne permettent de garantir que la donnée qu'on a en base de données pour une entité, c'est bien ce que l'on attend. Vous devrez obligatoirement travailler sur ces propriétés-là. La validation est une chose extrêmement importante, vous permettra de garantir que la donné que vous en bas, c'est bien ce que vous attendez. Ici, si je lui met du 10, maintenant, ça va fonctionner. Et bien sûr, on a encore un tout petit problème. Il vous dit qu'il n'arrive pas à insérer, il faudra regarder un petit peu ce qui est nul, voilà, ce qui est nul, c'est celui-ci. Le « createdAt » est nul, tout simplement parce que, voyez qu'ici, effectivement, on n'a pas du tout ajouté de constructeur particulier, donc, il faudra ajouter un constructeur, c'est obligatoire. On va le rajouter. On va faire un « public fonction » comme ça, puis on va faire un « construct » à cet endroit-là et on va simplement ici, lui mettre une information, lui écrasant tout de suite le « createdAt ». Ça, vous pouvez faire ça de façon simple, vous mettez simplement un « DateTime » , un truc très, très simple. Comme ça vous garantissez que cette donnée-là est bien insérée puisqu'elle n'est pas renseignée par l'utilisateur, c'est vraiment le moment où il va créer que ça va s'ajouter. Là, on a bien garanti que notre donnée est exactement celle que l'on souhaite vous pourriez aussi bloquer le « time », le passer en « integer » aussi, dire que c'est compris entre temps et temps, vous pourriez, sans aucun problème ajouter aussi des « choice » , c.à.d qu'on peut lui dire qu'on n'attend que certaines informations et pas tout. Ça, c'est jouable aussi. Si vous descendez un petit peu, voilà, il y a des contraintes, qui nous permettent d'avoir de la validation, des « user password » , par exemple. On peut faire des « count », on peut faire des « choice », regardez, c'est ici. Donc là, on a des « choice », par exemple. Donc là, dans les « choice », on pourrait dire que voilà, on ne peut ajouter que certaines valeurs. Donc, par exemple, pour le « Time », on pourrait venir ici garantir que le « time » sera toujours un « time » qu'on aura choisi. Alors, je vous montre, on va le faire aussi, tiens, celui-là, il est très bien, il est très intéressant à voir. On va pouvoir avoir, par exemple, 10 minutes, 20 minutes, pourquoi pas ? Ensuite, on va avoir 30 minutes. on a le droit à 40 minutes et puis pourquoi pas, on pourrait avoir droit aussi, ici à 50 minutes et enfin, 60 minutes. Donc, là voilà, on va supprimer ça, et puis, on va voir qu'effectivement, ça va restreindre le choix possible pour le « time ». Et quand on va essayer de pousser une donnée avec un « time », par exemple, qui va être à 15, ça ne va pas fonctionner, parce qu'on n'aura pas le droit. Cette valeur-là, n'est pas une valeur qui est une valeur permise. Donc, on va pouvoir bloquer beaucoup de choses. Pensez vraiment à garantir la validité de vos données. Vous avez tout ce qu'il faut en main, il y a une documentation complète avec énormément de types. N'hésitez pas à l'utiliser et à garantir proprement vos données.

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 !