Symfony – Passer des variables à Twig
Symfony – Passer des variables à Twig
Cours 7 — Passer des variables à Twig
Introduction
Un contrôleur peut transmettre des données à une vue Twig.
Ces données sont généralement affichées dans une page HTML.
Note Jekyll
Les exemples Twig de ce cours sont entourés par les balises Liquid
rawetendrawafin d’éviter que Jekyll interprète les expressions Twig.
Principe général
Le contrôleur prépare les données :
1
2
3
return $this->render('accueil/index.html.twig', [
'prenom' => 'Gérard'
]);
Twig les affiche :
1
{{ prenom }}
Passer une variable
Contrôleur :
1
2
3
4
5
6
7
#[Route('/bonjour', name: 'app_bonjour')]
public function bonjour(): Response
{
return $this->render('bonjour/index.html.twig', [
'prenom' => 'Gérard'
]);
}
Vue Twig :
1
{{ prenom }}
Résultat :
1
Gérard
Passer plusieurs variables
Contrôleur :
1
2
3
4
return $this->render('patient/index.html.twig', [
'nom' => 'Durand',
'prenom' => 'Paul'
]);
Vue Twig :
1
{{ prenom }} {{ nom }}
Résultat :
1
Paul Durand
Passer un objet
Contrôleur :
1
2
3
return $this->render('patient/show.html.twig', [
'patient' => $patient
]);
Vue Twig :
1
{{ patient.nom }}
Résultat :
1
Durand
Conclusion
Pour transmettre des données à Twig :
- utiliser le deuxième paramètre de
render(); - fournir un tableau associatif ;
- utiliser le nom de la clé dans Twig ;
- accéder aux propriétés d’un objet avec la notation point.
Exemple :
1
'patient' => $patient
1
{{ patient.nom }}
This post is licensed under CC BY 4.0 by the author.