Développement Web en Python avec Le Framework Django



Django est un Framework Web MVT (Model-View-Template) basé sur le langage Python. Il allie puissance et simplicité tout en proposant des fonctionnalités étendues pour répondre à tous les besoins en termes de développement Web moderne.


Objectif

À la fin de la formation, le participant sera en mesure de :

  • Installer et Configurer l’environnement de Travail (Python, Pycharm, Django)
  • Connecter Django avec une Base de Données et Exploiter les Données (Recherche, Insertion, Modification).
  • Développer des Vues pour définir les interactions de l’application.
  • Développer des Templates pour afficher le contenu de l’application en HTML/CSS/JS.
  • Gérer des formulaires et exploiter leurs données incluant la validation automatique et le chargement des fichiers.
  • Comprendre les différentes Réglages du Framework pour activer/désactiver des fonctionnalités au choix.

Public Cible

  • Développeurs Python souhaitant se lancer dans le développement Web
  • Développeurs Backend avec autres langages/Frameworks
  • Chefs de projet et Team Leads

Réserver Votre place



Effectif Maximal 10
Durée Totale 1 Mois
Calendrier
Prix Nous Consulter
Prochaine Session décembre 2022
Lieu de Formation 261 Bd Abd El Moumen Residence Al Amal Immeuble B No 17 Etage 4. Casablanca

Réservez dès Maintenant !


Programme de la Formation

Introduction

  • Rappels sur le Langage Python
  • Présentation du Framework Django
  • Architecture Générale
  • Avantages et Inconvénients

Travaux Pratiques

  • Préparation de l'environnement de Travail
  • Installation et Configuration de Django
  • Création d'un nouveau projet


Le Système ORM dans Django.

  • Les modèles dans Django: Model, Field, Table, Column, Primary Key...
  • Génération et application des migrations.
  • Utilisation des modèles
  • Recherche, Sélection, Modification et Suppression des données.
  • Filtres, Enchaînement des filtres et limitation des QuerySet
  • Relations entre les modèles : OneToOne. ForeignKey et ManyToMany 
  • Recherches traversant les relations
  • Héritage entre les modèles.

Travaux Pratiques

    • Définition de modèles dans une application Django
    • Utiliser les modèles définis dans desopération de recherche, insertion, modification et suppression
    • Aggregation des données et requêtes complexes

    Les Vues (Views)

    • Les vues fonctionnelles
    • Les vues basées sur les classes.
    • La Configuration des URLs
    • Les Objets Request/Response
    • Les vues génériques.

    Travaux Pratiques

    • Développer des vues (fonctionnelles et classes) et intégrer-les au projet.
    • Configurer les URLs des différentes vues.

    Les Templates 

      • Présentation du système de Templates de Django
      • Création et affichage des Templates.
      • Gestion et utilisation du contexte
      • Tags et filtre intégrés dans Django
      • Personnalisation et création des tags et filtres
      • Système d’Héritage entre les Templates.

      Travaux Pratiques

      • Création de Templates et usage des tags et filtres de Django
      • Création de Tags et filtres personnalisés et utiliser-les dans le fichier Template.

      Le système des Formulaires de Django.

      • La classe Form de Django
      • Construction d’un formulaire
      • Les différents widgets des Formulaires.
      • Validation des données d'un formulaire.
      • Gestion et personnalisation des messages d'erreurs.
      • Génération automatique de formulaire à partir des modèles Django.
      • Upload des fichiers
      • Protections CSRF

      Travaux Pratiques

      • Création d’un Formulaire Django
      • Récupérer les données et Implémenter la validation selon les critères définies
      • Intégrer le formulaire avec le fichier Template et traitement des erreurs de validation.

      Personnalisation et Configuration

      • L’internationalisation (i18n)
      • Les tests unitaires
      • Réglages de Django
      • Seed des données de la base de données en utilisant les fixtures.
      • L'interface d'administration.
      • Gestion des fichiers statiques.
      • Présentation des middlewares
      • Écriture de son propre middleware
        • Gestion des exceptions
          • Utilisation des Sessions dans les Vues
          • Sécurité des sessions
          • Les processeurs de contexte (PC)
          • Injection des données dans les Templates en utilisant les PC

          Travaux Pratiques

          • Internationaliser l’application django en deux version (anglais/Français)
          • Ecrire les tests unitaires de l’application
          • Déploiement de l’application vers un serveur externe (nginx sur un VPS ou Heroku)
          • Ecrire et activer des middlewares dans l’application Django
          • Ajouter un processeur de contexte pour transmettre des données vers les tTemplates.
          • Créer des Exceptions personnalisées et Tester-les.

          Django REST FrameWork (DRF) et Planification des Tâches avec Celery

            • Présentation de Celery
            • Installation et Configuration et Intégration de Celery avec Django
            • Ecriture et planification des Tâches Celery
            • Monitoring des Tâches avec Flower
            • Présentation de Django Rest Framework (DRF)
            • Sérialiseurs et Vues
            • ViewSets et Routeurs
            • Authentification et Permissions

            Travaux Pratiques

            • Installation de Celery et Flower et Intégration avec le projet Django
            • Création et Planification d’une tâche Celery
            • Monitoring de la tâche en utilisant l’interface de Flower
            • Installation et Intégration de Django Rest Framework
            • Création d’une API Restfull à l’intérieur du projet Django

            Administration et Audit de sécurité

            • Configuration du Cache sous Django sous plusieurs aspects : Fichiers, Base de Données, Memcached, …etc.
            •  Analyse des performances (« benchmarking »)
            • Le Retardement dans Django (Laziness) et son impact sur les performances.
            • Optimisation de l’accès à la base de données
            • La journalisation (logging) 
            • La sécurité dans Django
            • Déploiement d’une application Django vers un environnement de production standard
            • Déploiement avec Docker et docker-compose de toute la stack Django (app + DB + celery + flower)

            Travaux Pratiques

            • Configuration du Cache sous Django
            • Analyser les performances d’une application Django 
            • Faire l’audit de sécurité 
            • Déploiement de l’application avec docker en utilisant un DockerFile et docker-compose.



            S'inscrire en Ligne !


            Copyright© Innov-Center Consulting . All rights reserved. Powered by InnovCenter