Formation Django Avancé

Perfectionnez-vous sur Django !

Prix (Formation inter-entreprise)

1500€ HT / personne

Durée

3 jours

Dates

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Voici une formation pour vous perfectionner sur Django. Cette formation vous permettra de savoir comment résoudre des problématiques complexes, éviter les écueils et vous orienter dans le vaste monde du framework Django.

Les objectifs

  • Être capable de maîtriser les concepts avancés du framework Django
  • Savoir trouver les solutions à des problèmes complexes
  • Savoir utiliser les signaux
  • Savoir garantir la qualité des développements
  • Être en mesure d'améliorer les performances
  • Être capable d'intégrer des tests à ses projets Django

Pré-requis

  • Avoir suivi la formation Django ou avoir des connaissances similaires
  • Maîtriser le langage Python
  • Apporter son ordinateur

Le programme de la formation Django Avancé

Jour 1

  • Modèles avancés
    • Les types de modèles avancés (Abstract, Proxy, Mixins)
    • Méthodes de requêtage avancées
    • Aggregation, Lookups, Functions...
    • Personnalisation des querysets et managers
    • Héritage de modèle, astuces et pièges
    • Personnalisation de l'interface d'administration
    • Travaux pratiques : développement d'un manager personnalisé
    • Travaux pratiques : personnaliser l'administration pour ce modèle
  • Vues avancées
    • Les mixins de vues
    • Les Middleware
    • Travaux pratiques : Écrire un Middleware
  • Formulaires avancés
    • Écrire un champ personnalisé
    • Écrire un widget personnalisé
    • Introduction au concept de Formset
    • Formset factory
    • Travaux pratiques : Créer un formulaire avec un Formset ainsi que sa vue
  • Templates avancés
    • Comprendre le workflow du moteur de template
    • Quand et comment écrire un filtre personnalisé
    • Quand et comment écrire un tag personnalisé
    • Échappement et chaînes sécurisées
    • Context processor
    • Comment changer le moteur de template
    • Travaux pratiques : Créer un template personnalisé et ajouter un filtre personnalisé

Jour 2

  • Gestion des utilisateurs avancée
    • Modèle utilisateur remplaçable
    • Groupes et permissions
    • Créer ses propres permissions
  • Travaux pratiques : créer son propre modèle d'utilisateurs et le référencer dans un modèle
  • Travaux pratiques : créer une page réservée à un groupe
  • Localisation et internationalisation
    • Traduction et internationalisation des contenus
    • Dans les fichiers Python
    • Dans les templates
    • Création, édition et compilation de fichiers de traductions
    • Changement de langue dynamique
    • Localisation d'URL
    • Gestion des timezones
  • Travaux pratiques : Ajouter une notion internationale à son application Django
  • Signaux
    • Le concept de signal
    • Présentation des principaux signaux natifs
    • Quand et comment écrire un signal personnalisé
    • Travaux pratiques : Faire une action à la sauvegarde d'un modèle

Jour 3

  • Optimisation des performances
    • Accès à la base de données et bonnes pratiques ORM
    • Savoir quand les requêtes sont exécutées
    • selectrelated, prefetchrelated, Prefetch
  • Gestion du cache (vues, templates, modèles)
  • Déceler les requêtes lentes et les optimiser
  • Django Debug Toolbar
  • Travaux pratiques : Optimiser une vue en utilisant le cache et les bonnes pratiques
  • Commandes d'administration
    • Utilisation des commandes existantes
    • Création de commandes personnalisées pour Django
    • Travaux pratiques : Créer une commande
  • Tests
    • Introduction aux tests de modèles, vues et formulaires
    • Organisation et lancement des tests
    • Méthodes de tests avancés (factory_boy, Faker)
  • Travaux pratiques : Écrire ses premiers tests
  • Déploiement
    • Logging
    • Apache / mod_wsgi
    • gunicorn / uwsgi
    • Circus / Chaussette WSGI Server
    • Nginx pour remplacer Apache

Télécharger le programme

Le(s) formateur(s)

Gaël Utard Après ses études d'ingénieur, une incursion dans le monde de la recherche et un passage dans une startup pour travailler sur le noyau Linux, Gaël UTARD s'est lancé dans la grande aventure du développement d'applications web. Co-fondateur d'une association de promotion du Logiciel Libre à Toulouse (TouLibre) et contributeur à MapOSMatic, un service Web permettant de générer des cartes de villes en utilisant les données OpenStreetMap, il saura vous faire voyager avec Django.

Jean-Étienne Castagnède Jean-Etienne est un ingénieur ayant une double compétence en administration système et réseau et en développement d'applications web (DévOps). Après une expérience de 5 ans en tant que chef de projet SI et SIG pour un fournisseur d'accès Internet alternatif, Jean-Étienne a choisi de se recentrer sur son expertise cartographique au travers de Django. Il a commencé avec GoogleMaps API puis a préféré s'orienter sur des outils libres tel qu'OpenLayers. Après cette première expérience il y a 6 ans et de bonnes compétences PostgreSQL, il s'est naturellement tourné vers PostGIS afin de proposer des cartes interactives de qualité.

Besoin d'aide ?

Vous souhaitez discuter avec nous à propos de votre projet de formation ?
Vous voulez plus d'information sur une formation ou notre fonctionnement ?


Rappel Email

Nos forces

  • Des formation à taille humaine
  • Des formateurs passionnés
  • Des véritables workshop
Accèder au Manifeste

Nos clients

Peugeot
Axa
Voyage SNCF
SAP
Meetic
EADS

Nos formations en images

Sass et Compass
CasperJS
Ruby on Rails
Ruby

Formation Django Avancé

Perfectionnez-vous sur Django !

Voici une formation pour vous perfectionner sur Django. Cette formation vous permettra de savoir comment résoudre des problématiques complexes, éviter les écueils et vous orienter dans le vaste monde du framework Django.

Les objectifs

  • Être capable de maîtriser les concepts avancés du framework Django
  • Savoir trouver les solutions à des problèmes complexes
  • Savoir utiliser les signaux
  • Savoir garantir la qualité des développements
  • Être en mesure d'améliorer les performances
  • Être capable d'intégrer des tests à ses projets Django

Pré-requis

  • Avoir suivi la formation Django ou avoir des connaissances similaires
  • Maîtriser le langage Python
  • Apporter son ordinateur

Le programme de la formation Django Avancé

Jour 1

  • Modèles avancés
    • Les types de modèles avancés (Abstract, Proxy, Mixins)
    • Méthodes de requêtage avancées
    • Aggregation, Lookups, Functions...
    • Personnalisation des querysets et managers
    • Héritage de modèle, astuces et pièges
    • Personnalisation de l'interface d'administration
    • Travaux pratiques : développement d'un manager personnalisé
    • Travaux pratiques : personnaliser l'administration pour ce modèle
  • Vues avancées
    • Les mixins de vues
    • Les Middleware
    • Travaux pratiques : Écrire un Middleware
  • Formulaires avancés
    • Écrire un champ personnalisé
    • Écrire un widget personnalisé
    • Introduction au concept de Formset
    • Formset factory
    • Travaux pratiques : Créer un formulaire avec un Formset ainsi que sa vue
  • Templates avancés
    • Comprendre le workflow du moteur de template
    • Quand et comment écrire un filtre personnalisé
    • Quand et comment écrire un tag personnalisé
    • Échappement et chaînes sécurisées
    • Context processor
    • Comment changer le moteur de template
    • Travaux pratiques : Créer un template personnalisé et ajouter un filtre personnalisé

Jour 2

  • Gestion des utilisateurs avancée
    • Modèle utilisateur remplaçable
    • Groupes et permissions
    • Créer ses propres permissions
  • Travaux pratiques : créer son propre modèle d'utilisateurs et le référencer dans un modèle
  • Travaux pratiques : créer une page réservée à un groupe
  • Localisation et internationalisation
    • Traduction et internationalisation des contenus
    • Dans les fichiers Python
    • Dans les templates
    • Création, édition et compilation de fichiers de traductions
    • Changement de langue dynamique
    • Localisation d'URL
    • Gestion des timezones
  • Travaux pratiques : Ajouter une notion internationale à son application Django
  • Signaux
    • Le concept de signal
    • Présentation des principaux signaux natifs
    • Quand et comment écrire un signal personnalisé
    • Travaux pratiques : Faire une action à la sauvegarde d'un modèle

Jour 3

  • Optimisation des performances
    • Accès à la base de données et bonnes pratiques ORM
    • Savoir quand les requêtes sont exécutées
    • selectrelated, prefetchrelated, Prefetch
  • Gestion du cache (vues, templates, modèles)
  • Déceler les requêtes lentes et les optimiser
  • Django Debug Toolbar
  • Travaux pratiques : Optimiser une vue en utilisant le cache et les bonnes pratiques
  • Commandes d'administration
    • Utilisation des commandes existantes
    • Création de commandes personnalisées pour Django
    • Travaux pratiques : Créer une commande
  • Tests
    • Introduction aux tests de modèles, vues et formulaires
    • Organisation et lancement des tests
    • Méthodes de tests avancés (factory_boy, Faker)
  • Travaux pratiques : Écrire ses premiers tests
  • Déploiement
    • Logging
    • Apache / mod_wsgi
    • gunicorn / uwsgi
    • Circus / Chaussette WSGI Server
    • Nginx pour remplacer Apache

Télécharger le programme

Le(s) formateur(s)

Gaël Utard Après ses études d'ingénieur, une incursion dans le monde de la recherche et un passage dans une startup pour travailler sur le noyau Linux, Gaël UTARD s'est lancé dans la grande aventure du développement d'applications web. Co-fondateur d'une association de promotion du Logiciel Libre à Toulouse (TouLibre) et contributeur à MapOSMatic, un service Web permettant de générer des cartes de villes en utilisant les données OpenStreetMap, il saura vous faire voyager avec Django.

Jean-Étienne Castagnède Jean-Etienne est un ingénieur ayant une double compétence en administration système et réseau et en développement d'applications web (DévOps). Après une expérience de 5 ans en tant que chef de projet SI et SIG pour un fournisseur d'accès Internet alternatif, Jean-Étienne a choisi de se recentrer sur son expertise cartographique au travers de Django. Il a commencé avec GoogleMaps API puis a préféré s'orienter sur des outils libres tel qu'OpenLayers. Après cette première expérience il y a 6 ans et de bonnes compétences PostgreSQL, il s'est naturellement tourné vers PostGIS afin de proposer des cartes interactives de qualité.