• 12 heures
  • Difficile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 26/08/2024

Afficher des pages dynamiques

Compétences évaluées

  • Afficher des pages dynamiques

Description

Maintenant que la page d’accueil de l’application est en place, vous allez pouvoir travailler sereinement sur le modèle de données. Juliette vous a préparé un Modèle Conceptuel de Données que vous n’avez plus qu’à implémenter.

Modèle conceptuel de données à implémenter
Modèle conceptuel de données à implémenter

Bien que les équipes de votre client soient constituées de personnes aux profils généralement techniques, il conviendra aussi d’ajouter une validation des données à toute épreuve. Car comme le dit Juliette :

Ne fais jamais confiance aux entrées utilisateur !

  • Question 1

    Vous commencez judicieusement par vous servir de la commande  make:entity  pour accélérer vos développements.

    Cependant, certaines colonnes de vos tables en base de données doivent être nullables.

    Comment l’indiquer à Doctrine dans vos entités ?

    • #[ORM\Column(notNullable: false)]

    • #[ORM\Nullable()]

    • #[ORM\Column(nullable: true)]

  • Question 2

    Vos entités sont désormais prêtes, et Pierre, votre product owner, aimerait que la structure des bases de données soit mise en place sur les serveurs définitifs au plus vite. Vous vous dépêchez de générer vos fichiers de migration et de les tester sur votre poste. 

    La commande que vous utilisez est :

    • symfony console doctrine:migrations:migrate

    • symfony console doctrine:migrations:apply --all

    • symfony console doctrine:migrations:generate

    • symfony console doctrine:migrations:send

  • Question 3

    Maintenant que vous avez livré la structure de la base de données, Pierre aimerait avoir rapidement les formulaires, afin de pouvoir rapidement démarrer ses tests de validation sur les serveurs. 

    Vous allez créer votre premier  FormType  . 

    Vous créez une classe qui étend  AbstractType  et utilisez l’argument  $builder  de sa méthode  buildForm  pour définir les champs de votre formulaire. 

    Quelle est la bonne méthode ?

    • $builder->define(‘nom_du_champ’)->type(TypeDuChamp::class)

    • $builder->add(‘nom_du_champ’, TypeDuChamp::class)

    • $builder->field([‘nom_du_champ’ => TypeDuChamp::class])

Et si vous obteniez un diplôme OpenClassrooms ?
  • Formations jusqu’à 100 % financées
  • Date de début flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous