Objectifs de la séance ¶
- Création d'une extension
Twig
Consignes ¶
Ce sujet comporte des questions complémentaires du TP « Symfony 6 « avancé » ». Les questions seront logiquement traitées dans le même dépôt Git que le sujet principal.
Amélioration de l'interface et de l'expérience utilisateur ¶
En plus de celles déjà apportées dans le sujet de TP, de nouvelles améliorations de l'interface utilisateurs peuvent être imaginées.
Création d'une extension Twig pour l'affichage des dates
¶
Dans votre interface, les dates de création des annonces sont affichées dans un format date classique (voire en anglais), ce qui ne facilite pas la perception de l'ancienneté de l'annonce. Vous allez écrire une extension Twig pour afficher les dates de manière plus intelligible. Le résultat attendu sera validé par des tests fournis, vous serez donc confronté au développement guidé par les tests (« Test driven development » en anglais). Puisque la problématique de base repose sur les dates, vous allez utiliser le nouveau composant « Clock » de Symfony.
- Lisez la documentation de
Symfonysur les extensionsTwig - Créez une extension
Twignommée «DateFormatterExtension» en utilisant le «MakerBundle» deSymfonyInformationPour découvrir ce que vous pouvez générer, lancez la commande suivante :
php bin/console make:
- L'extension
Twigproposera une fonction et un filtre nommés «date_formatter» qui prendront en paramètre une date et retourneront une chaîne de caractères dont la valeur vous sera donnée par le jeu de tests fourni - Lisez la documentation du composant «
Clock» deSymfony - Demandez le service
clockdans le constructeur du «Runtime» de votre extensionTwig - Faites en sorte que votre extension
Twigpasse les testsPHPUnitfournis :