36 0 1MB
Introduction à Django Gestion de projets Django
Programmation Python Framework Django : installation & configuration
Dr. Hamidou Kassogué Technolab - ISTA Année universitaire 2018-2019
1/26
Dr. H. Kassogué
Python : Django : Installation & configuration
2/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Sommaire
1
Introduction à Django Ce qu’est Django Installation et configuration de Django
2
Gestion de projets Django
Dr. H. Kassogué
Python : Django : Installation & configuration
3/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Django un framework Python destiné au Web
Figure – Logo de Django
Créé en 2003 par Adrian Holovaty et Simon Willison Nommé Django en souvenir de Django Reinhardt (1910 à 1953) considéré comme le meilleur guitariste manouche de tous les temps Publié au grand public en 2005 Aujourd’hui utilisé par de grandes firmes (NASA, Instagram, Pinterest, ...) Dr. H. Kassogué
Python : Django : Installation & configuration
4/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Le principe de fonctionnement de Django Rappel de l’architecture MVC (Modèle - Vue - Contrôleur)
Figure – Architecture MVC Dr. H. Kassogué
Python : Django : Installation & configuration
5/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Le principe de fonctionnement de Django La magie Django avec l’architecture MVT (Modèle - Vue - Template)
Figure – Architecture MVT
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Le principe de fonctionnement de Django
Avec l’approche MVT, le développeur gère quatre parties essentielles : 1 Le routage des requêtes, en fonction de l’URL ; 2 Les modèles pour la représentation des données dans l’application, avec leur gestion (ajout, édition, suppression. . . ) ; 3 Les templates pour l’affichage de ces données et de toute autre information au format HTML ; 4 Les vues pour récupérer les données et générer le template selon celles-ci. On verra tout ça en détails une fois Django opérationnel.
6/26
Dr. H. Kassogué
Python : Django : Installation & configuration
7/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Le principe de fonctionnement de Django
En plus du MVT, Django requiert le développement d’un site sous forme de projet : Un site est un projet composé de plusieurs applications ; Chaque application est une composante du modèle MVT constitués de plusieurs fichiers (ses vues, ses modèles, ses schémas d’URL) ; Avantages : Le code est beaucoup plus structuré (séparation nette entre applications) ; Application correcte réutilisable dans un autre projet par simple copier/coller.
Dr. H. Kassogué
Python : Django : Installation & configuration
8/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Note de versions de Python et Django
NB : disposer d’une version Python supérieur ou égale à la 3.4. Depuis sa version 2.0, Django n’est plus compatible avec Python 2. Les instructions d’installation et configurations qui suivent sont pour : Python 3.4 et versions supérieurs Django 2.2.2
Dr. H. Kassogué
Python : Django : Installation & configuration
9/26
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Installation (sur Linux et Mac) Exécuter dans le terminal la commande pip install Django==2.2.2 ou (si une version antérieur de Python est aussi installée) python3 -m pip install Django==2.2.2 Certaines versions requièrent py -m pip install Django==2.2.2 Remarque : Si pip n’est pas reconnu comme commande (c-à-d pas installé sur Python), il faut l’installer via l’exécution des deux lignes de commandes suivantes : curl https ://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Installation (sur Windows)
10/26
1
Télécharger la dernière version (2.2.2 en cette date) sur https://www.djangoproject.com/download/ ;
2
Aller dans informations générales du système (Raccourcis Windows + Pause) ;
3
Cliquez sur Paramètres système avancés (menu de gauche) ;
4
Cliquez sur Variables d’environnement ;
5
Ajouter à la variable système Path, la valeur de variable suivante : ;C:\PythonXX\;C:\PythonXX\Lib\site-packages\django\bin\ XX sont les premiers chiffres de la version de Python (exemple 36 pour Python 3.6.1).
6
Valider et quittez puis exécuter en cmd les deux commandes cd C:\Users\\\django2.2.2 python setup.py install si une version antérieur de Python est aussi installée, utiliser pythonX -m ou py -m. Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Ce qu’est Django Installation et configuration de Django
Vérification de l’installation
11/26
1 2
Lancer l’interpréteur Python Exécuter les deux commandes : >>> import django django.get_version() Si on obtient 2.2.2 (version en date d’aujourd’hui) comme réponse, l’installation a réussi.
NB : Django passe à la dernière version via la commande : pip install Django --upgrade Si pip n’est pas reconnu comme commande, il n’est pas encore installé sur votre Python. Il faut l’installer via l’exécution des deux lignes de commandes suivantes : curl https ://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Sommaire
12/26
1
Introduction à Django
2
Gestion de projets Django Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Gestion de projet par Django
Django offre un outil en ligne de commandes qui permet de : Créer des projets et applications ; Créer des tables dans la base de données associées ; Lancer le serveur web de développement ; Maintenir le site après déploiement ; ... NB : Il faut bien différencier la console système (pour l’exécution des commandes systèmes) de l’interpréteur Python (pour écrire et exécuter du code Python).
13/26
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Initialisation du projet
14/26
Ouvrir le terminal (ou invite de commande) 1 Accéder au dossier où sera initialisé le projet (il peut en contenir plusieur). Exemple, avec le dossier ProjetsDjango à l’emplacement path : cd path\ProjetsDjango 2
Initialiser un projet avec son nom via : django-admin startproject nomDuProjet
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Initialisation du projet
15/26
Pour le projet pariDouman, il en résulte un dossier pariDouman structuré comme suit :
Le fichier manage.py est un raccourci local pour la commande django-admin permettant de configurer le projet. Le dossier pariDouman du même nom que le projet contient quatre fichiers : __init__.py qui indique à Python qu’il s’agit d’un module (n’y toucher pas), settings.py est un fichier qui contient les paramètres de configuration du projet, urls.py est u fichier qui contiendra les routages d’urls pour le projet, wsgi.py qui est un fichier de configuration propre à Django (n’y toucher pas aussi). Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Lancement du projet
16/26
Dans le terminal (en étant toujours à la racine du projet) Lancer le serveur de développement python manage.py runserver Accéder au site via l’adresse http://localhost:8000
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Configuration de quelques paramètres de settings.py
17/26
BASE_DIR : définie par défaut est une variable utilisée pour référencer vers les fichiers du projet (css, javascript, base de données, ...) ; DEBUG : variable permettant d’indiquer si le site est en mode "debug" ou pas ; DATABASES : variable déjà remplie pour gérer une BD SQLite ; Pour une BD MySQL, se sera : DATABASES = { ’default’: { ’ENGINE’: ’django.db.backends.mysql’, ’NAME’: ’NomDeLaBD’, ’USER’: ’’, ’PASSWORD’: ’’, ’HOST’: ’127.0.0.1’, ’PORT’: ’3306’, } } Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Configuration de quelques paramètres de settings.py
18/26
LANGUAGE_CODE = ’fr-FR’ : variable pour la langue de développement du site ; TIME_ZONE = ’UTC’ : variable pour le fuseau horaire (le cas en Afrique de l’ouet) ; USE_I18N=True, USE_L10N=True et USE_TZ=True : variables pour assurer la traduction automatique du site ;
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Création d’une application pour le projet
19/26
Lancer depuis le terminal (en étant à la racine du projet) : python manage.py startapp nomDeApplication Pour notre première application pari, il en résulte un sous dossier structuré comme suit :
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Création d’une application pour le projet
20/26
Détails du contenu du dossier du projet : admin.py permet de définir les modèles à afficher et modifier via l’interface administration générée automatiquement par Django ; apps.py permet de configurer certaines propriétés de l’application ; models.py permet de définir les modèles de l’application ; test.py permet la création de tests unitaires ; views.py contient toutes les vues de l’application ; migrations est un dossier permettant de retracer l’évolution des modèles d’appliquer les modifications à la base de données associée.
Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Création d’une application pour le projet
21/26
Dans la variable INSTALLED_APPS de settings.py ajouter le nom de l’application. Il y a déjà des applications installées par défaut. Avec l’application pari, son contenu sera : INSTALLED_APPS = [ ’django.contrib.admin’, ’django.contrib.auth’, ’django.contrib.contenttypes’, ’django.contrib.sessions’, ’django.contrib.messages’, ’django.contrib.staticfiles’, ’pari’, ] Dr. H. Kassogué
Python : Django : Installation & configuration
Introduction à Django Gestion de projets Django
Création d’un projet Lancement du projet et configuration du projet Création d’une application pour le projet
Ajoutons une vue minimale à l’application pari (création de accueil) Toute vue prend en paramètre une requête de type request et retourne une page de type HttpResponse. Un routage est fait pour y accéder. Dans pari/views.py, ajoutons une vue qui retourne au client la page d’accueil : from django.shortcuts import render from django.http import HttpResponse def accueil(request): return HttpResponse(""" Bienvenue sur Pari Douman !
Créez un compte, connectez−vous et découvrez les paris ouverts et/ou en créer.
""")