Les gabarits
Un gabarit : du HTML et des emplacements ; afficher une variable, boucler, tester, inclure un fragment, hériter d'une mise en page, et l'échappement automatique des valeurs.
- 25 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Gabarit : de quoi s'agit-il ?
Voir la réponse
Fichier de HTML contenant des emplacements et des instructions simples, qu'un moteur remplit avec des données pour produire une page.
Le HTML s'écrit une fois, les données changent à chaque requête.
<h1>{{ titre }}</h1>donne<h1>Bonjour</h1>quandtitrevautBonjour.Les articles sont Stylo (stock 3), Cahier (stock 0) et Règle (stock 5). Quel HTML ce gabarit produit-il ?
```html
<ul>
{% for a in articles %}
{% if a.stock > 0 %}
<li>{{ a.nom }}</li>
{% endif %}
{% endfor %}
</ul>`- Deux éléments
li, Stylo et Règle - Trois éléments
li, le testifne faisant que masquer le Cahier à l'écran - Trois éléments
li, celui du Cahier restant vide - Un seul élément
li, Stylo, carifinterrompt toute la boucle
Voir la réponse
Deux éléments
li, Stylo et RègleLa boucle passe sur les trois articles, et le
ifdécide à chaque tour d'écrire ou non la ligne. Le Cahier n'apparaît pas du tout dans le HTML envoyé, il n'est pas seulement caché.- Deux éléments
Un moteur de gabarits remplit les … d'un document HTML avec les données que lui transmet le ….
Voir la réponse
Un moteur de gabarits remplit les emplacements d'un document HTML avec les données que lui transmet le contrôleur.
Le moteur ne va pas chercher les données lui-même : il reçoit un dictionnaire de variables, par exemple
articlesettitre, et le rend sous forme de HTML.Héritage de gabarits : de quoi s'agit-il ?
Voir la réponse
Mécanisme par lequel un gabarit reprend la mise en page d'un autre et n'en remplace que certaines zones.
L'en-tête, le menu et le pied de page vivent dans un seul gabarit de base,
{% extends "base.html" %}suffit aux pages. Changer le menu se fait en un seul endroit.Le pied de page, avec le lien des mentions légales, est copié dans quarante gabarits. Changer ce lien oblige à quarante modifications. Que faire ?
- Le construire en HTML dans le contrôleur et le passer en variable à chaque page
- Garder les copies et les modifier avec un remplacement de texte global à chaque changement
- Le charger dans le navigateur par JavaScript depuis un fichier à part
- Le placer dans un gabarit de base dont les pages héritent
Voir la réponse
Le placer dans un gabarit de base dont les pages héritent
Une mise en page commune se règle par héritage : le pied de page vit une fois dans la base. Du HTML fabriqué dans le contrôleur mêle présentation et logique, et obligerait à désactiver l'échappement pour l'afficher.