Files
live-campus-mcs-p-2027.2/Semaine_11/Jour_02/3_3_Jinja2/USAGE-IA.md
T
gauvainboiche 0d071d2843 Semaine 11
2026-07-11 21:38:00 +02:00

2.5 KiB

Exo 3.3 "Templates dynamiques" - BOICHÉ Gauvain

Je déclare avec fait usage de l'IA :

Raison 1

Pour de "l'autocomplétion" avec le plan gratuit de Github Copilot (modèle inconnu) pour générer la base html parce que ça me casse un peu les noix de refaire ça. C'est un genre d'aamorçage qui devrait exister de base dans les IDE avec un algo à l'ancienne ultra-léger...

Pourquoi cet usage

Parce que ça me gonfle de refaire ça pour la Xième fois parce que je ne l'ai pas retenu tellement l'HTML me gonfle.

Ce que j'en retiens

Je dois trouver une extension qui le fait pour moi.

Raison 2

Comprendre pourquoi mes pages Jinja2 ne "marchent pas".

Pourquoi cet usage

Refaisant un document pour chaque page, je n'ai pas su comprendre par les docs accessibles (qui donnaient juste les blocs avec % et variables Python) qu'il fallait les peupler UNIQUEMENT des éléments étendant la "base". Que l'HTML s'oubliait sur ces parties-là. Je prenais les blocs en le mettant dans des balises etc sans succès.

Ce que j'en ai retenu

Les patrons Jinja2 héritent de TOUT, et on ne rajotue que ce qu'il y a besoin. y compris les bases DOCTYPE.

Raison 3

Pourquoi cet usage

Je cliquais sur "actives" et "details" mais je restait avec le contenu de "index". Je demande une revue de code à MiniMax M3, qui me diagnostique trois possibilités :

Symptom Likely cause Remedy
Same content on every page Browser cache serving the old HTML Hard-reload: Ctrl + F5 (or Cmd + Shift + R on macOS)
URL changes but body identical A single route handling all paths Verify each @app.route is distinct
Template not overridden Missing {% block content %} in child Ensure children declare the block

J'essaye, et rien.

Ce que j'en ai retenu

Que je suis un imbécile. Je demande à l'IA de m'aider, et rien n'y a fait. Jusqu'à ce que je vois ma connerie :

@app.route('/')
def index():
    return render_template('index.html', username=USERNAME, equipments=EQUIPMENTS)

@app.route('/actives')
def actives():
    return render_template('index.html', username=USERNAME, equipments=EQUIPMENTS)

@app.route('/details')
def details():
    return render_template('index.html', username=USERNAME, equipments=EQUIPMENTS)

Trois fois "index.html". Bon. Résultat, je corrige et ça marche. L'IA ne m'a servi à RIEN ici, sauf ceci : des fois, il faut aller faire un tour, boire de l'eau, revenir et relire.