Introduction
- Rappel des principes de la POO.
- Le design pattern MVC.
- Présentation de 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. Développer les opérations CRUD.
Gestion des vues
- Vues simples ou fonctions vues .
- Les classes HttpResponse, HttpRequest et QueryDict.
- Configuration des Urls : 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 des erreurs 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.