Examen en ligne



🚀 To Do app


👨🏿‍🎓Examen Microsoft connecté 2h : examen en ligne

La delegation d'événements

Cours



Site de réservation avecDjango !

 

Site de réservation de vols.



✈️Document 1 — Mise en place et modèle simple

Créer le projet airline, l'application flights, un modèle Flight avec trois champs, puis découvrir les migrations, le shell Django et les premières requêtes ORM.

🚀Objectif : comprendre le lien entre modèle, table et objets.

→ TD 1 : Flight Django


🛬Document 2 — Première relation avec ForeignKey

Créer un nouveau projet, introduire Airport, relier Flight à deux aéroports et étudier les relations dans les deux sens, avec departures, arrivals et les filtres ORM.

🚀Objectif : comprendre les clés étrangères et la navigation entre modèles.

TD 2 : Flight Django  


🧑🏼‍✈️Document 3 — Relations ManyToManyField

Créer un nouveau projet pour introduire les passagers et les vols, puis représenter le fait qu'un passager peut prendre plusieurs vols et qu'un vol peut accueillir plusieurs passagers.

🚀Objectif : comprendre les relations plusieurs-à-plusieurs et leurs requêtes ORM.

TD 3 : Flight Django 


Pour finir un projet avec création des objets avec bootstrap 5.

TD 4 : flight Django


API avec Django

 



🚀 Cours : API Django

Django !

 


1- Formulaire HTML manuel

On construit un formulaire HTML à la main et on traite les données soi-même dans la vue.

👩🏼‍🎓Django → vers generic : etape 1

🪛Travail :  CRUD


2 - Form (forms.Form)

On remplace le formulaire HTML manuel par une classe Form qui gère la validation et la récupération des données.

Django → vers generic : etape 2 (Form)


3 -ModelForm (forms.ModelForm)

On utilise un ModelForm pour générer automatiquement le formulaire à partir du modèle et créer l’objet en base via form.save().

Django → vers generic : etape 3 (ModelForm)

🪛 Travail :  CRUD



4 - Generic Views (ListView / CreateView)

On remplace les vues manuelles par des vues génériques qui automatisent entièrement le CRUD (liste, création, modification, suppression).

Django → vers generic : etape 4 (generic View)


https://github.com/dupontdenis/Generic-CRUD.git


JS : suite

API :  

Créer ce site sur les studios Ghibli 

 


Liste des projets sur une structure "étudiants" ! 


Choix d'un projet : 



Les bases de JS

 Suite les bases de JS

https://docs.google.com/document/d/1gRA9N2u6O6eozarmP1yzYjEKvsAaMEztooWzCKKkPSI/edit?usp=sharin

👩🏼‍🎓 Ce qu'il faut comprendre en priorité

Générer une liste HTML à partir d’un tableau JavaScript



Le tableau :

const fruits = ["Pomme", "Poire", "Banane"];

Le résultat HTML :

<ul>

    <li>Pomme</li>

    <li>Poire</li>

    <li>Banane</li>

</ul>

👩🏼‍🎓L’idée essentielle : 


🪛On écrit les balises HTML que l’on connaît et on utilise ${...} pour générer dynamiquement les éléments <li> à partir d’un tableau JavaScript.



const listHTML = `
  <ul>
    ${fruits.map(fruit => `<li>${fruit}</li>`).join("")}
  </ul>
`;

Explications :

  1. La structure HTML fixe : les balises <ul> et </ul> sont écrites directement, car nous savons que nous voulons créer une liste.

  2. L’insertion dynamique : ${...} permet d’insérer le résultat d’une expression JavaScript dans la chaîne HTML.

  3. La génération des éléments : fruits.map(fruit => ...) parcourt le tableau et génère un élément <li> pour chaque fruit.

  4. La réunion des éléments : .join("") rassemble les différentes chaînes HTML en une seule, sans séparateur.


👩🏼‍🎓À retenir : 
  • les backticks ` ` délimitent le template literal, 
  • le HTML fixe en définit la structure et 
  • ${...} permet de calculer le contenu à insérer. 
🚀 Ainsi, si le tableau contient davantage de fruits, la liste s’adapte automatiquement.

🥷🏼Le problème des structures hétérogènes

🪛Comment afficher dans un même tableau HTML des objets dont la structure est inconnue et les attributs différents ? Faut-il prévoir manuellement une colonne pour chaque attribut possible ?

🛟La solution : parcourir dynamiquement les attributs des objets pour construire automatiquement les colonnes du tableau et afficher les données disponibles.


🆘 structure hétérogénes : methodes