Python Django

Django est un framework Web MVC (Modèle-Vue-Contrôleur) basé sur le langage Python. Ce stage vous apprendra à mettre en œuvre ce framework et à utiliser avec efficacité ses différents modules dans le cadre du développement d’applications Web.

Objectifs pédagogiques

  • Savoir interfacer Django avec une base de données
  • Développer des vues dynamiques
  • Développer des templates
  • Gérer les formulaires Django
  • Mettre en oeuvre les principales fonctions avancées
PROGRAMME DE FORMATION

Introduction

  • Rappel des principes de la POO.
  • Le Design Pattern MVC.
  • Présentation du framework Django.
  • Origine et historique. Objectifs et avantages.
  • Les composants de framework Django.

Exercice 
Préparation de l’environnement. Installation de Python, Django, Serveur Apache, MySQL et Eclipse. Création d’un nouveau projet.

L’accès aux données avec Django

  • Le modèle ORM Django.
  • Les modèles Django : Model, Field, Table, Column, Primary Key…
  • Mapping des associations : OneToMany, ManyToOne, ManyToMany, OneToOne.
  • Stratégies de mapping de l’héritage : Meta Class, OneToOneField, ManyToManyField…
  • Accès aux données avec les QuerySets.

Exercice 
Développer une couche d’accès aux données. Interfacer Django avec MySQL.

Gestion des vues

  • Vues simples ou fonctions vues.
  • Les classes HttpResponse, HttpRequest et QueryDict.
  • Configuration des URL : UrlConf.
  • Vues génériques.
  • Exemples de vues génériques : Redirects, Create, Update, Delete…

Exercice 
Développer des vues dynamiques HTML avec Django.

Les templates

  • Le rôle des templates.
  • Création et chargement des templates.
  • Gestion des contextes.
  • Utilisation des tags et filtres personnalisés.
  • Réutilisation des templates : héritage entre templates.

Exercice 
Développer un template pour faciliter la génération de la présentation.

Gestion des formulaires

  • Les avantages des formulaires Django.
  • Création des formulaires.
  • Les différents types de champs.
  • Validation des données d’un formulaire.
  • Gestion et personnalisation des messages d’erreurs.
  • Génération des formulaires à partir des modèles.

Exercice 
Développer les formulaires associés aux opérations CRUD de l’atelier précédent.

Fonctions avancées

  • L’internationalisation.
  • L’authentification et la gestion des sessions.
  • Optimisation et caches.
  • Intégration d’Ajax.
  • L’interface d’administration.
  • Les tests unitaires.

Exercice 
Intégrer Ajax à travers le framework JQuery.