Symfony – Les liens dans Twig
Symfony – Les liens dans Twig
Cours 8 — Les liens dans Twig
Introduction
Twig permet de créer des liens vers les routes Symfony.
Cela évite d’écrire directement les URL dans les pages.
Si une URL change, il suffit de modifier la route.
Principe général
Route :
1
#[Route('/accueil', name: 'app_accueil')]
Vue Twig :
1
<a href="{{ path('app_accueil') }}">Accueil</a>
Résultat :
1
<a href="/accueil">Accueil</a>
Créer un lien simple
Route :
1
#[Route('/contact', name: 'app_contact')]
Vue Twig :
1
<a href="{{ path('app_contact') }}">Contact</a>
Créer un lien avec un paramètre
Route :
1
#[Route('/patient/{id}', name: 'patient_show')]
Vue Twig :
1
2
3
<a href="{{ path('patient_show', {'id': 12}) }}">
Voir le patient
</a>
Résultat :
1
/patient/12
Utiliser une variable comme paramètre
1
2
3
<a href="{{ path('patient_show', {'id': patient.id}) }}">
Voir le patient
</a>
Créer plusieurs liens dans une boucle
1
2
3
4
5
6
7
{% for patient in patients %}
<a href="{{ path('patient_show', {'id': patient.id}) }}">
{{ patient.nom }}
</a>
{% endfor %}
Conclusion
Pour créer un lien dans Twig :
- utiliser la fonction
path(); - fournir le nom de la route ;
- transmettre les paramètres si nécessaire ;
- éviter d’écrire directement les URL.
Exemple :
1
<a href="{{ path('app_accueil') }}">Accueil</a>
This post is licensed under CC BY 4.0 by the author.