0Pricing
Python Academy · Leçon

Vues et URL

Acheminer les requêtes vers les vues

Vues et URL est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.

Qu’est-ce qu’une vue ?

Une vue Django est une fonction (ou une classe) qui reçoit une requête web et renvoie une réponse web. Les vues contiennent la logique de vos pages et se trouvent dans le views.py d’une application.

from django.http import HttpResponse

def home(request):
    return HttpResponse('Hello, world!')
print('A view takes request, returns response')

L’argument request

Chaque vue reçoit un objet request contenant les informations de la requête entrante : méthode, données GET/POST, utilisateur et bien plus encore.

from django.http import HttpResponse

def info(request):
    return HttpResponse('Method: ' + request.method)
print('request carries the incoming data')

Motifs d’URL

Le urls.py d’une application associe les chemins URL aux vues à l’aide d’une liste appelée urlpatterns et de la fonction path().

# blog/urls.py
from django.urls import path
from . import views

urlpatterns = [
    path('', views.home),
]
print('path maps a URL to a view')

Nommer les URL

Donnez un name à un motif afin de pouvoir y faire référence ailleurs sans intégrer le chemin en dur.

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]
print("name='home' lets you reference it later")

Paramètres d’URL

Capturez des parties de l’URL avec des convertisseurs tels que <int:post_id>. La valeur capturée est transmise à la vue.

from django.urls import path
from . import views

urlpatterns = [
    path('post/<int:post_id>/', views.detail, name='detail'),
]
print('post/5/ -> detail(request, post_id=5)')

Lire le paramètre

La valeur capturée est reçue comme un argument nommé correspondant au nom du convertisseur.

from django.http import HttpResponse

def detail(request, post_id):
    return HttpResponse('Post ' + str(post_id))
print('View receives post_id')

Inclure les URL des applications

Le urls.py racine du projet importe les URL de chaque application avec include(), ce qui préserve la modularité du routage.

# mysite/urls.py
from django.urls import path, include

urlpatterns = [
    path('blog/', include('blog.urls')),
]
print('include() wires up app urls')

Générer les modèles

La fonction abrégée render() associe un modèle à un dictionnaire de contexte et renvoie une HttpResponse.

from django.shortcuts import render

def home(request):
    return render(request, 'home.html', {'name': 'Alice'})
print('render combines template + context')

Fonctions utilitaires 404

get_object_or_404() récupère un objet ou lève une erreur 404 s’il est absent ; c’est un schéma courant et sûr.

from django.shortcuts import get_object_or_404, render
from .models import Post

def detail(request, post_id):
    post = get_object_or_404(Post, id=post_id)
    return render(request, 'detail.html', {'post': post})
print('get_object_or_404 handles missing data')

Résoudre les URL

En Python, reverse('detail', args=[5]) construit une URL à partir du nom d’un motif. Dans les modèles, la balise {% url %} fait la même chose.

from django.urls import reverse
# reverse('detail', args=[5]) -> '/blog/post/5/'
# In a template: {% url 'detail' post.id %}
print('reverse builds URLs from names')

Vues fondées sur des classes

Django propose également des vues fondées sur des classes, comme ListView et DetailView, qui gèrent les schémas courants avec moins de code.

from django.views.generic import ListView
from .models import Post

class PostList(ListView):
    model = Post
print('ListView lists objects automatically')

Vérification rapide

Vérifiez vos connaissances sur les vues et les URL.

Récapitulatif

Vous avez dirigé les requêtes vers des vues.

  • Les vues reçoivent une request et renvoient une réponse
  • urlpatterns et path() associent les URL aux vues, éventuellement avec un name
  • Des convertisseurs comme <int:id> capturent des parties des URL
  • include() relie les URL des applications ; render() et get_object_or_404() sont des fonctions abrégées pratiques

Questions Fréquemment Posées

La leçon « Vues et URL » est-elle gratuite ?

Oui — le texte complet de « Vues et URL » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Vues et URL » ?

Acheminer les requêtes vers les vues Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Python Academy ?

Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Vues et URL » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?

Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Projets et applications
  2. Modèles et migrations
  3. Vues et URL
  4. L’administration Django
← Retour à Python Academy