Vous êtes sur la page 1sur 9

FRAMEWORK PYTHON-DJANGO

L’essentiel sur Les routes, vues, ET templates

Sources :
https://docs.djangoproject.com/fr/3.1/topics/http/urls/#url-dispatcher

https://docs.djangoproject.com/fr/3.1/topics/http/views/#a-simple-view

https://docs.djangoproject.com/fr/3.1/ref/settings/#append-slash

https://docs.djangoproject.com/fr/3.1/ref/settings/#dirs

https://docs.djangoproject.com/en/3.0/ref/django-admin/.

Architecture du projet
Créer un chemin d'URL
Django utilise la variable ROOT_URLCONF définie dans le fichier settings.py pour savoir quel fichier utiliser
pour résoudre les chemins d'URLs.

Par défaut, cette variable pointe vers le fichier urls.py qui se trouve dans le dossier principal de votre projet
Django.
À l'intérieur de ce fichier, on peut utiliser la fonction path pour associer un chemin d'URL à une vue :
Définition des routes : Association des urls aux vues
Fichier esseniel/essentiel/urls.py
Créer une vue pour l'URL
Une vue Django est tout simplement une fonction Python qui prend en paramètre la requête envoyée par le
navigateur et retourne un objet de type HttpResponse :

Vues qui retournent un objet HttpResponse

Retourner un template
Un fichier de template est tout simplement un fichier HTML que l'on retourne dans une vue et dans lequel on
peut utiliser le langage de gabarits de Django pour par exemple insérer des données.
Pour retourner un template dans une vue, on utilise la fonction render :
Vue qui retourne un template
Fonction render qui crée un objet HttpResponse

Template index_projet.html
Fichier : essentiel/essentiel/templates/index_projet.html
Insérer des données dans un template
Pour passer des données de la vue au template, on utilise ce qu'on appelle le "contexte".
On peut passer un dictionnaire à la fonction render dans le paramètre context .

Une vue qui passe des données à un template


Fonction render, paramètre context = dictionnaire

On peut ensuite utiliser le nom des clés du dictionnaire pour afficher les valeurs associées
à l'intérieur du fichier de template HTML avec les doubles accolades :

Template qui reçoit des données d’une vue


Utilisation de {{clé du dictionnaire context}}
Fichier : essentiel/essentiel/projet_data.html
Capture d’un paramètre dans une url par une vue

Il est possible de capturer un paramètre à partir d’une URL à l’aide d’une vue afin de
répondre à plusieurs urls ayant un format commun et afficher par la suite plusieurs
templates correspondants

Vue qui permet de capturer un paramètre à partir de l’url et afficher un template


différent en fonction de la valeur du paramètre

Les templates affichés par la vue view_page_p


Redirection : fonction redirect()

La vue redirect_view permet de rediriger l’url /redirect/ vers /article/

Vous aimerez peut-être aussi