0Pricing
DevOps Bootcamp · Leçon

Boucles et blocs if dans les modèles

Générez des sections de configuration répétées.

Boucles et blocs if dans les modèles est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.

La logique se trouve dans {% %}

Au-delà de l’affichage des valeurs, Jinja2 exécute une logique de contrôle dans les balises {% %}. C’est ainsi qu’un seul template peut générer de nombreuses lignes. 🔁

Une boucle for de base

Utilisez une boucle for pour répéter des lignes sur les éléments d’une liste. Chaque élément produit un nouveau bloc de texte généré.

{% for host in backends %}
server {{ host }};
{% endfor %}

Toujours fermer vos blocs

Chaque balise ouvrante doit avoir une balise fermante : endfor termine une boucle, tout comme endif termine une condition. L’oublier empêche le rendu.

Parcourir un dictionnaire

Parcourez les paires d’un dictionnaire avec .items(), en récupérant chaque clé et chaque valeur pour générer une configuration structurée.

{% for key, val in settings.items() %}
{{ key }} = {{ val }}
{% endfor %}

La variable loop

Dans une boucle, Jinja2 vous fournit loop.index pour le numéro de l’élément courant, ainsi que loop.first et loop.last comme indicateurs booléens pratiques.

{% for s in servers %}
server{{ loop.index }} {{ s }};
{% endfor %}

Un bloc if simple

Un bloc if génère son contenu uniquement lorsque la condition est vraie ; la configuration facultative n’apparaît donc que lorsqu’elle est nécessaire.

{% if enable_ssl %}
ssl on;
{% endif %}

if, elif et else

Enchaînez les choix avec elif, puis terminez par else. Une seule branche est générée, comme en Python.

{% if env == 'prod' %}
level = warn
{% else %}
level = debug
{% endif %}

Conditions dans les boucles

Imbriquez un if dans un for pour ne générer que les éléments correspondants, par exemple en ignorant les serveurs désactivés d’un groupe.

{% for h in hosts %}
{% if h.enabled %}
server {{ h.ip }};
{% endif %}
{% endfor %}

Contrôle des espaces

Les boucles peuvent laisser des lignes vides. Un tiret comme {%- -%} supprime les espaces environnants pour obtenir une sortie propre.

{%- for h in hosts -%}
{{ h }}
{%- endfor -%}

Le else d’une boucle for

Un for peut comporter un else qui s’exécute uniquement lorsque la liste est vide : c’est idéal pour afficher une solution de repli appropriée.

{% for h in backends %}
server {{ h }};
{% else %}
# no backends defined
{% endfor %}

Balises d’affichage et de logique

Ne les confondez pas : {{ }} produit une valeur, tandis que {% %} contrôle le flux sans rien afficher directement.

Vérification rapide

Vous voulez répéter une ligne de configuration pour chaque hôte d’une liste. Quelle balise démarre cette boucle ?

Récapitulatif

Vous savez maintenant parcourir une liste avec for, choisir une branche avec if, lire loop.index, imbriquer ces structures et supprimer les espaces superflus. Un seul template suffit désormais à générer une configuration dynamique. ✨

Questions Fréquemment Posées

La leçon « Boucles et blocs if dans les modèles » est-elle gratuite ?

Oui — le texte complet de « Boucles et blocs if dans les modèles » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Boucles et blocs if dans les modèles » ?

Générez des sections de configuration répétées. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?

Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Boucles et blocs if dans les modèles » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?

Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Le module template et les fichiers .j2
  2. Variables et expressions dans Jinja2
  3. Boucles et blocs if dans les modèles
  4. Filtres : default, join et upper
← Retour à DevOps Bootcamp