diff --git a/2026-01-16.md b/2026-01-16.md index c745984..2ce6523 100644 --- a/2026-01-16.md +++ b/2026-01-16.md @@ -1,22 +1,74 @@ [Vendredi 16 Janvier 2026] +1. [Commande du jour] +# uvicorn app:app --reload --host 0.0.0.0 --port 8000 + ctrl + r = permets de regarder dans l'historique du terminal ctrl + r + uvi = historique de uvicorn -semaine prochaine test avec api ia sur les servs du garage +(semaine prochaine test avec api ia sur les servs du garage -> on demandera un résumé des infos qu'on lui envoie -page de présentation avec une requête get (page) +page de présentation avec une requête get (page)) ----------------------------------------------- -MVC (Model View Controller) - ^ ^ ^ - | | | -Ordinateur Dashboard app.py -> /enpoint +MVC (Model View Controller) + ^ ^ ^ + | | | +Ordinateur Dashboard app.py -> /enpoint Utilisateurs ----------------------------------------------- +2. [Echauffement + démarrage à froid ce matin] motif d'architecture logicielle destiné aux interfaces graphiques -quoi mettre sur notre portfolio : app p2p / homeserver / un jeu / app agenda météo agenda +quoi mettre sur notre portfolio : app p2p / homeserver / un jeu / + +app agenda météo agenda + +ajout dans l'app.py pour importer les données de ordinateur.py + +mise en commentaire pour test/remplacement de def init reload etc dans ordinateur + +pip install requests (puis pip freeze dans le .txt) + +----- +3. [JSON + Display avec local host] + +test de nouvelle fonction app.get dans app.py return ordi1 (dépréciée dans la partie 4) +fonction pour afficher les données de Ordinateur sur une page HTML +Affiche sur une page web locale les infos de grabber via la section debug + + +de base : variable déclarée dans une fonction est locale et ne peux pas être accédée par une demande externe + +si elle est déclarée dehors elle est globale + +4. [LE RETOUR DU HTML (JINJA2)] +# -> pip install jinja2 +jinja2 est un moteur de template HTML/python -> page html avec balises spéciales qui recoivent les données d'appli python + +(il est possible d'intégrer un espace de virtualisation Python dans VScode) +créer un dossier templates dans le dossier grabber (stockage des pages html ex index.html) + +Dans grabber : (ajout de la collecte de l'addresse mac : +ip link | awk '/ether/ {print $2; exit)' + +Dans app.py : +from ordinateur import Ordinateur +from fastapi.templating import Jinja2Templates +from fastapi import Request as Req +from fastapi.responses import HTMLResponse +from fastapi.staticfiles import StaticFiles + + +templates = Jinja2Templates(directory="templates") + +@app.get("/ordi1") +async def show_info(request: Req): + return templates.TemplateResponse("index.html", {"request": request, "ordi": ordi1}) + +# dans ce contexte request et ordi sont des paramètres qui sont envoyés/appliqués sur la page HTML, en l'occurence "index.html" + +voir les commentaires dans mon app.py pour plus de clarté, assez chaud d'expliciter le code ici dans