Découverte¶
Le but de cette partie est d'obtenir un embryon de "Quote machine" fonctionnant sans base de données.
1. Hello World¶
Objectif : mettre en place notre première page qui servira à afficher "Hello " suivi d'une valeur récupérée depuis l'URL.
Travail à réaliser
- Créer votre premier controller
HelloController
avec une actionindex()
- Mettre en place une route qui se nomme
hello_world
et avec comme URL/hello/*
- Exemple :
/hello/Karadoc
- Exemple :
- Modifier le controller pour récupérer la valeur depuis l'URL puis affichez le message
Hello {valeur} !
2. Hello World - MVC¶
Objectif : faire en sorte que notre controller HelloController
respecte le MVC.
Travail à réaliser
- Déplacer la logique d'affichage de votre controller
HelloController
dans un template Twig qui héritera du templatebase.html.twig
fourni par Symfony - Modifiez le template
base.html.twig
pour intégrer Bootstrap 5 dans votre application
3. Liste des citations¶
Objectif : mettre en place une liste statique de citations.
Travail à réaliser
- Créer un nouveau controller
QuoteController
avec une actionindex()
- Mettre en place une route qui se nomme
quote_index
et avec comme URL/quote
- Modifier le controller pour afficher une liste d'au moins 5 citations qui seront stockées sous la forme d'un tableau à 2 dimensions avec pour chaque citation 2 champs :
content
etmeta
. Exemple :content
: Sire, Sire ! On en a gros !meta
: Perceval, Livre II, Les Exploités
- Mettre en place une redirection de
/
vers/quote
Vous pouvez récupérer des citations depuis :
4. Recherche d'une citation¶
Objectif : mettre en place un formulaire de recherche permettant de trouver une citation par rapport à son contenu.
Travail à réaliser
- Ajouter un formulaire utilisant la méthode GET à droite d'une Navbar Bootstrap
- Filtrer votre tableau de citations en utilisant le champ (
content
) et la valeur transmise par le formulaire - La valeur recherchée doit être affichée au niveau du champ de recherche
Attention
Le formulaire devra être réalisé en HTML sans le composant Form
de Symfony.
Ressources :
Dernière mise à jour:
February 27, 2023