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.