Files
training.django/documentation/00-course-plan.md
Steve Kossouho e3ebf6bf4f Add documentation and source
Added documentation, source and extra files.
2025-07-02 20:26:50 +02:00

3.3 KiB

Programme de Django Introduction

TODO: Remplacer les images de code par des sections Markdown


Découvrir Django

  • Design Pattern MVC : structure, utilisation
  • Présentation de Django : paradigme, versions, documentation
  • Autres frameworks web Python existants : Flask, Pylons, Pyramid etc.
  • Environnements de développement intégrés
  • Environnements de développement console
  • Installation de Django et paquets annexes (applications Django)

Structure générale d'un projet Django

  • Structure générale d'un projet
  • Structure générale d'une application

Atelier : Création d'un projet et d'une application Django


Afficher des pages avec Django

  • Routage d'URL
  • Écriture de vues
  • Intrpduction aux Vues basées sur des classes
  • Introduction au middleware

Templating (gabarits) avec Django

  • Principe du templating général
  • Principe du templating avec Django
  • Espaces réservés (interpolation)
  • Filtres de templates
  • Balises de templates (tags) et structures de contrôle
  • Héritage de templates
  • Balises spéciales : include, load, url et static
  • Balises et filtres personnalisés

Ateliers :

  • Créer et afficher un template dans la console
  • Utiliser un contexte dans un template (+filtres)
  • Utiliser des structures de contrôle
  • Utiliser l'héritage et les blocs
  • Découvrir les balises spéciales
  • Écrire des filtres personnalisés

Saisir des données avec les formulaires

  • Définition de formulaires manuels
  • Utilisation de formulaires
  • Utilisation des formulaires dans les templates
  • Valeurs par défaut des formulaires, traitement, sécurité etc.
  • Validation de la saisie utilisateur
  • Gestion des téléchargements et fichiers média

Persistance des données avec des bases de données (ORM)

  • ORM : intérêt, avantages
  • ORM Django : configuration, fonctionnalités
  • Définition des modèles de données
  • Définition des relations entre tables (clés)
  • Configuration et classe Meta
  • Héritage, Proxy et modèles abstraits
  • Interroger la base de données
  • Enregistrer et modifier des données dans la base (+ concurrence)
  • Système de migrations de schéma Django

Utiliser des formulaires avec la base de données

  • Définition de formulaires basés sur les modèles
  • Utilisation des formulaires et validation
  • Gestion des téléchargements

Interface d'administration de Django

  • Présentation de l'interface d'administration intégrée
  • Configuration de l'administration

L'authentification et les utilisateurs

  • L'application d'authentification de Django
  • S'authentifier programmatiquement dans une vue
  • S'authentifier avec un formulaire

Traduction d'un projet Django (I18N)

  • Traduction dans le code Django
  • Traduction dans les templates

Ateliers :

  • Ajout de traduction au code de projet
  • Ajout de traduction dans les templates

Atelier : I18N de l'application


Concepts avancés

  • Envoyer des emails
  • Créer des vues de téléchargment
  • Lancement de tests d'un projet Django (unittest) :
    • Test Runner
    • Test Client
  • Déploiement d'un projet Django
  • Interconnexion avec les réseaux sociaux (django-allauth)
  • API REST en Django
  • Interfaçage avec un framework front-end (ex. Vue.js ou Angular)
  • Interfaçage avec un frawework front-end basé sur le contenu HTML (ex. HTMX)
  • Intégration avec Git et une usine logicielle