Cadre Django

Apprenez à développer des applications web professionnelles avec Python en utilisant Django

Développement Web4.8(91)8h 1min49 leçons8 sections

Ce que vous apprendrez

  • Installer Python et Django
  • Créer un projet et une application dans Django
  • Travailler avec les URL et les vues
  • Afficher des pages HTML avec les Templates
  • Utiliser la syntaxe logique et l'héritage de fichiers
  • Créer le modèle et travailler avec les bases de données
  • Ajouter des données depuis la page d'administration
  • Travailler avec les formulaires et les méthodes Post et Get
  • Créer un site portfolio personnel
  • Créer un site de vente en ligne avec prise de commandes

À propos du cours

Ce cours enseigne le framework Django pour développer des applications et des sites web avec Python. Django est un système open source qui rend la création de sites simple et rapide grâce à ses bibliothèques prêtes à l'emploi. Vous commencez par l'introduction du cours et l'installation de Python et de Django, puis vous créez votre premier projet et votre première application. Ensuite, vous apprenez la théorie de base de la création de sites, le travail avec les URL et les vues, le passage de valeurs dans le lien, l'affichage de pages HTML avec les Templates, la syntaxe logique et l'héritage de fichiers. Viennent ensuite le modèle, les bases de données et la page d'administration, ainsi que les formulaires et les méthodes Post et Get. Vous appliquez tout cela dans trois projets : un site portfolio personnel de plusieurs pages, un site de vente en ligne avec prise de commandes, et un projet de travail avec des bases de données. Ce cours s'adresse à celles et ceux qui connaissent les bases de Python et veulent créer des sites web. Chaque leçon explique une étape avec un exemple simple. À la fin, vous saurez créer un site complet avec Django à partir de zéro et le relier à une base de données.

Résultats attendus

  • Maîtriser l'utilisation du framework Django.
  • Créer des sites web professionnels et réactifs.
  • Comprendre comment travailler avec des bases de données et des modèles HTML.
  • Construire des projets pratiques applicables dans la vie réelle.

Avis des apprenants

Ces avis proviennent d'apprenants qui ont acheté le contenu et en ont complété au moins 50% — il n'y a aucun avis de personnes n'ayant pas suivi le contenu.
4.8
★★★★★
91 avis
5★
75
4★
15
3★
1
2★
0
1★
0

    Contenu du cours

    1

    Apprendre Django de A à Z

    2 leçons
    1. Introduction au coursIntroduction au cours sur le framework Django, expliquant qu'il s'agit d'un framework de développement web basé sur Python et que les apprenants ont besoin de connaissances préalables en programmation, surtout Python.1:35
    2. Théories fondamentales pour construire des sites web avec DjangoExplique la théorie de base de Django : la notion de Framework, le cycle Request et Response de l'URL vers la View, le Model et le Template, et la division d'un projet en applications.8:37
    2

    Tâches essentielles

    7 leçons
    1. Installation de Python et DjangoExplique l'installation de Python et Django : vérifier la version de Python, s'assurer que l'option Add Python to PATH est cochée à l'installation, puis installer Django avec pip et vérifier sa version.5:53
    2. Créer votre premier projet avec DjangoCrée pas à pas le premier projet Django, explique la structure de ses fichiers et dossiers, l'ouvre dans Visual Studio Code et le lance sur le port par défaut, avec la possibilité de changer le numéro de port.14:48
    3. Créer votre première application dans le projetExplique la différence entre un Project et une Application dans Django, montre comment diviser un projet en applications sépare les fonctions, puis crée la première application et passe en revue ses fichiers comme admin, models et views.11:57
    4. La méthode la plus courante pour installer Django et créer un projetExplique la méthode la plus courante pour installer Django : créer et activer un Virtual Environment pour chaque projet, y installer Django, puis créer le projet et l'application blog.9:28
    5. Gestion des liens et des vuesExplique comment une URL est traitée par une View : le fichier urls.py de chaque application, la définition d'un path relié à une fonction de views.py, la réception de la request et le retour d'une response.23:50
    6. Envoyer des valeurs via l'URLExplique le passage de valeurs par l'URL : le fichier urls et les URL patterns, l'envoi de paramètres avec les path converters à la fonction view, le nommage d'un path et son usage dans les liens, et le retour d'une réponse HTML.14:30
    7. Afficher des pages HTML via des templatesExplique l'affichage de pages HTML via les Templates avec la fonction render à la place de HttpResponse, la définition du nom du Template et le passage de données de l'URL vers la page.11:22
    3

    Tâches avancées

    6 leçons
    1. Méthode pour gérer l'affichage des données dans le templateExplique comment transmettre des données d'une view à un Template et les afficher dans une page HTML : variables simples, filtres comme le format de date et la valeur par défaut, listes et dictionnaires.15:54
    2. Utilisation de la syntaxe logiqueExplique l'utilisation de la syntaxe logique dans les Templates : la boucle for pour afficher les éléments d'une liste, la création de liens dynamiques avec la balise url en passant un identifiant, et l'héritage de templates.15:56
    3. Héritage de fichiers dans les templatesExplique l'héritage de templates : création d'un fichier base contenant les parties communes aux pages, puis utilisation de extends et block dans les autres pages pour éviter de répéter le code.10:37
    4. Gestion des bases de données via le modèlePrésente le Model Django comme une classe héritant de models.Model qui représente une table de base de données, et passe en revue les types de champs comme le texte, les nombres et les relations, avec des attributs comme blank.6:22
    5. Construire le modèle et migrer pour le lier à la base de donnéesConstruit concrètement un Model Post avec des champs texte, une date et des choices, puis exécute makemigrations et migrate pour créer la table, et consulte le fichier SQLite avec l'outil DB Browser.13:31
    6. Gestion du modèle et ajout de données via la page adminTravaille avec le Model via la page Admin : enregistrement de Post avec admin.register, ajout de données depuis l'Admin et vérification dans DB Browser, personnalisation de list_display, modification et suppression.11:17
    4

    Projet : Création d'un site personnel avec plusieurs pages

    7 leçons
    1. Projet de site Web personnel avec plusieurs pages (1)Lance un projet de portfolio personnel avec Django : création du dossier et de l'environnement virtuel, installation de Django, commande startproject, démarrage du serveur local, puis création de la première application.5:14
    2. Projet de site Web personnel avec plusieurs pages (2)Poursuit le projet de portfolio en créant la première view et un fichier HTML simple, en les reliant via le fichier urls de l'application inclus dans les urls du projet, jusqu'à l'affichage d'une page Hello World.5:26
    3. Projet de site Web personnel avec plusieurs pages (3)Crée le Model du projet de portfolio, un Job avec une image, un titre et un résumé, en configurant l'envoi d'images avec ImageField et en exécutant makemigrations et migrate pour créer la table.4:43
    4. Projet de site Web personnel avec plusieurs pages (4)Connecte le projet à une base PostgreSQL au lieu de SQLite : installation et création d'une base, configuration des paramètres DATABASES, installation de la bibliothèque psycopg2, puis exécution de migrate et affichage de la table Job.10:34
    5. Projet de site Web personnel avec plusieurs pages (5)Configure l'Admin du projet de portfolio : enregistrement du Model, création d'un superuser, ajout de jobs avec leurs images, personnalisation de list_display, puis affichage des données Job sur la page d'accueil.9:22
    6. Projet de site Web personnel avec plusieurs pages (6)Conçoit le template de la page d'accueil du projet de portfolio à partir d'un template Bootstrap prêt à l'emploi, modifie l'en-tête et le contenu, puis utilise une boucle for pour afficher les éléments Job stockés dans la base.10:01
    7. Projet de site Web personnel avec plusieurs pages (7)Termine le projet de portfolio en affichant les images téléversées : configuration de MEDIA_URL et MEDIA_ROOT dans les paramètres, ajout de la route statique dans urls, puis ajustement de la mise en page et ajout de liens de réseaux sociaux.9:53
    5

    Formulaires

    2 leçons
    1. Introduction générale aux formulairesIntroduit les Forms dans Django et leur rôle dans l'interaction avec l'utilisateur, comme les commentaires, la connexion et les commandes, et présente les sujets à venir, dont la protection contre le Cross Site Scripting et la validation des valeurs.1:45
    2. Explication des théories de base pour Form & Post & GetExplique la différence entre les méthodes GET et POST pour envoyer les données d'un formulaire et laquelle protège le mieux, puis les attaques Cross Site et la protection du formulaire par un csrf token dans le Template.7:32
    6

    Projet : Création d'un site de vente en ligne et de commandes

    9 leçons
    1. Projet de site Web de vente en ligne et de demandes de commandes (1)Démarre un projet de commande de pizzas en ligne pour appliquer les Forms en pratique : création du projet et de l'application, définition des views, des urls et des Templates, et affichage des pages Home et Order.9:57
    2. Projet de site Web de vente en ligne et de demandes de commandes (2)Construit le formulaire de commande de pizza en HTML avec des champs pour les garnitures et la taille et un bouton d'envoi, puis montre que GET affiche les valeurs dans l'URL alors que POST exige un csrf token, sinon une page Forbidden apparaît.7:43
    3. Projet de site Web de vente en ligne et de demandes de commandes (3)Construit le formulaire de commande de pizza avec la bibliothèque Forms de Django : une classe héritant de forms.Form, son affichage dans la view, la validation des valeurs avec is_valid et un message de succès quand les données sont valides.22:01
    4. Projet de site Web de vente en ligne et de demandes de commandes (4)Crée les Models du projet pizza, Size et Pizza, les relie par une clé étrangère avec suppression en cascade, ajoute une méthode __str__, puis exécute makemigrations et migrate et enregistre les tables dans l'Admin.10:48
    5. Créer un site de vente en ligne et des demandes de commande (5)Relie le formulaire de commande au Model avec ModelForm au lieu d'un Form simple, et affiche les options de taille depuis la base avec ModelChoiceField et un query set, de sorte que les changements de l'admin apparaissent aussitôt sur le site.9:03
    6. Créer un site de vente en ligne et des demandes de commande (6)Affiche les commandes de pizza enregistrées et permet à l'utilisateur de modifier la sienne : sauvegarde en base, transmission de l'identifiant de commande au Template et création d'un lien de modification avec un message de confirmation.10:56
    7. Créer un site de vente en ligne et des demandes de commande (7)Ajoute l'affichage et la modification des commandes au projet pizza : récupération des commandes depuis la base, validation du formulaire lors de la modification, sauvegarde des changements et affichage des données actuelles dans les champs.16:24
    8. Créer un site de vente en ligne et des demandes de commande (8)Améliore l'affichage du formulaire de commande dans un Template : rendu des champs en paragraphes avec as_p ou en tableau avec as_table, puis mise en forme avec la bibliothèque crispy forms après son installation et la modification des paramètres.8:22
    9. Créer un site de vente en ligne et des demandes de commande (9)Termine le design du site pizza avec un template Bootstrap prêt à l'emploi dans un fichier base, avec des blocks pour chaque page, puis affiche une image du dossier static sur la page d'accueil avec la balise load static.9:03
    7

    Projet : Création de sites Web basés sur des bases de données

    13 leçons
    1. Projet de création de sites web basés sur des bases de données (1)Présente le projet final, une application de notes complète reposant sur une base de données, et montre ses fonctions : inscription d'un utilisateur, connexion, ajout, affichage, modification et suppression de notes.5:36
    2. Projet de création de sites web basés sur des bases de données (2)Prépare l'environnement du projet d'application de notes : création du dossier et de l'environnement virtuel, installation de Django, création du projet et de l'application, puis définition d'une première view simple reliée aux urls et lancement du serveur.6:12
    3. Projet de création de sites web basés sur des bases de données (3)Ajoute une application distincte pour la page d'accueil du projet de notes, avec ses propres urls et Templates, affiche des variables comme la date et l'heure dans la page et inclut les urls de l'application dans le projet.7:16
    4. Projet de création de sites web basés sur des bases de données (4)Travaille avec la base de données et la page Admin du projet de notes : exécution de migrate, création d'utilisateurs avec leurs permissions et suppression, puis restriction d'une page aux utilisateurs connectés avec le décorateur login_required.13:14
    5. Projet de site Web d'interaction avec les bases de données (5)Crée le premier Model du projet de notes avec les champs title, text et date de création, explique le rôle de l'ORM, exécute makemigrations et migrate, puis enregistre le Model dans l'Admin avec une classe ModelAdmin.8:33
    6. Projet de site Web d'interaction avec les bases de données (6)Affiche les données des notes depuis la base : une view de liste et une view de détail recevant l'identifiant de la note, leur liaison aux urls, la création de leurs Templates et la gestion d'une note inexistante.13:06
    7. Projet de site Web d'interaction avec les bases de données (7)Présente les Class Based Views de Django comme alternative aux views fonctions, comme TemplateView, ListView et DetailView, et convertit les pages de notes avec elles pour réduire le code et définir le model et le template.12:39
    8. Projet de site Web d'interaction avec les bases de données (8)Ajoute les fichiers statiques et la mise en forme de l'interface au projet de notes : création d'un dossier static et d'un fichier CSS, chargement avec la balise load static, et création d'un template base commun dont les pages héritent.10:17
    9. Projet de site Web d'interaction avec les bases de données (9)Améliore le design du site de notes avec Bootstrap : liaison du fichier CSS, création d'une barre de navigation avec liens, affichage des notes en cartes, utilisation de filtres pour tronquer le texte et lien de chaque note vers sa page de détail.10:38
    10. Projet de site Web d'interaction avec les bases de données (10)Explique comment Django permet à un utilisateur ordinaire d'ajouter des données à la base via une create view et un ModelForm : modèle, champs, redirection après succès, mise en forme du formulaire et bouton d'envoi.12:04
    11. Projet de site Web d'interaction avec les bases de données (11)Explique la création des pages de modification et de suppression dans Django avec les update et delete views, avec un modèle de confirmation de suppression et des liens d'annulation et de retour à la liste des notes.11:59
    12. Projet de site Web d'interaction avec les bases de données (12)Explique comment lier les notes à leur utilisateur et réserver les pages aux utilisateurs connectés, puis créer les pages de connexion et de déconnexion avec LoginView et LogoutView de Django et définir la redirection.13:47
    13. Projet de site Web d'interaction avec les bases de données (13)Explique la création d'une page d'inscription dans Django avec une CreateView et un formulaire d'inscription, son style, et l'ajout d'une barre de navigation dont les liens de connexion et déconnexion dépendent de l'état de l'utilisateur, puis conclut le projet.12:00
    8

    Pièces jointes

    3 pièces jointes
    1. Télécharger les Codes et Fichiers pour le Projet Portfolio
    2. Télécharger les Codes et Fichiers pour le Projet de Vente en Ligne
    3. Téléchargement des codes et fichiers du projet de bases de données

    Formateur

    Ing. Amr Abdel Fattah

    Ing. Amr Abdel Fattah

    Ingénieur en systèmes informatiques spécialisé dans le développement d'applications mobiles et de sites Web, avec une expérience dans la création de plateformes et d'applications Web populaires.
    49.1K vues20 cours

    Ce cours fait partie du diplôme

    Cours similaires