1. A propos des varibles passées en url dans django
Django est un framework robuste et complet qui peut vous aider à créer des applications Web de toute sorte. Cet article explique comment obtenir des paramètres transmis par des URL dans les vues Django afin de gérer la fonction correspondante. Vous avez peut-être vu divers blogs proposant des URL telles que:
1 |
www.example.com/blog/article/77 # 77 est l'identifiant de l'article à afficher |
Dans Django, les variables passées en URL permettent d’envoyer des informations dynamiques aux vues via les routes définies dans le fichier de configuration des URLs. Ce mécanisme est essentiel pour structurer une application web en fournissant des URLs dynamiques capables de traiter différents contenus sans avoir à écrire une route spécifique pour chaque cas.
Afin de pouvoir faire un test et voir comment cela fonctionne, nous devons créer un miniprojet django intégrant une application 'blog':
2. Créer un projet Django
Ouvrez un terminal et exécutez :
1 2 |
django-admin startproject myproject cd myproject |
3. Créer une application "blog"
3.1 Créer l'application "blog"
Dans le dossier du projet, créez une application blog:
1 |
python manage.py startapp blog |
3.2. Ajouter l'application "blog" au projet
Dans myproject/settings.py, ajoutez blog dans la liste INSTALLED_APPS:
1 2 3 4 5 6 7 8 9 |
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog', # Ajout de l'application "blog" ] |
4. Configuration des URLs
Modifiez myproject/urls.py pour inclure les URLs de blog:
1 2 3 4 5 6 7 |
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('blog/', include('blog.urls')), # Inclure les URLs de l'application "blog" ] |
Créez ensuite le fichier blog/urls.py et ajoutez:
1 2 3 4 5 6 |
from django.urls import path from . import views urlpatterns = [ path('article/<int:id>/', views.article_detail, name='article_detail'), ] |
5. Créer la Vue (views)
Modifiez blog/views.py et ajoutez:
1 2 3 4 |
from django.http import HttpResponse def article_detail(request, id): return HttpResponse(f"Vous consultez l'article avec l'ID : {id}") |
6. Lancer le serveur et tester
Démarrez le serveur Django:
1 |
python manage.py runserver |
Tapez ensuite dans votre navigateur un exemple d'url du blog avec un identifiant id qui sera passé en url:
http://127.0.0.1:8000/blog/article/77/
Vous devriez voir:
Vous consultez l'article avec l'ID : 77
Younes Derfoufi
CRMEF OUJDA