Créer une application Web Python avec Django
Django est un framework Web Python de haut niveau qui encourage un développement rapide et une conception propre et pragmatique. Il prend en charge une grande partie des tracas du développement Web, permettant aux développeurs de se concentrer sur l'écriture de l'application au lieu de réinventer la roue. Cet article vous guidera dans la création d'une application Web simple à l'aide de Django.
Démarrer avec Django
Avant de pouvoir commencer à créer une application Web Django, vous devez installer Django. Vous pouvez installer Django à l'aide de pip, l'installateur de paquets Python:
pip install django
Une fois Django installé, vous pouvez créer un nouveau projet Django en exécutant la commande suivante dans votre terminal ou invite de commande:
django-admin startproject myproject
Cette commande crée un nouveau répertoire appelé myproject
avec les fichiers nécessaires pour commencer. Accédez à ce répertoire:
cd myproject
Créer une application Django
Dans votre projet Django, vous pouvez créer des applications individuelles qui gèrent des fonctionnalités spécifiques. Par exemple, vous pouvez avoir une application pour l'authentification des utilisateurs, une autre pour les articles de blog, etc. Pour créer une application, exécutez la commande suivante:
python manage.py startapp myapp
Cela crée un nouveau répertoire appelé myapp
contenant des fichiers comme models.py
, views.py
et tests.py
, entre autres. Vous définirez vos modèles, vues et modèles dans cette application.
Définition des modèles
Les modèles Django définissent la structure de vos données et sont représentés sous forme de classes Python. Vous les définissez dans le fichier models.py
de votre application:
from django.db import models
class BlogPost(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
Une fois vos modèles définis, vous devez créer des tables de base de données pour eux. Exécutez les commandes suivantes pour appliquer les migrations:
python manage.py makemigrations
python manage.py migrate
Créer des vues et des modèles
Les vues Django gèrent la logique de votre application et interagissent avec les modèles pour restituer les données dans les modèles. Une vue simple peut être créée dans le fichier views.py
:
from django.shortcuts import render
from .models import BlogPost
def home(request):
posts = BlogPost.objects.all()
return render(request, 'home.html', {'posts': posts})
Le code ci-dessus récupère tous les articles de blog de la base de données et les transmet à un modèle appelé home.html
. Le modèle home.html
est stocké dans un répertoire appelé templates
au sein de votre application:
<!DOCTYPE html>
<html>
<head>
<title>Blog Home</title>
</head>
<body>
<h1>Blog Posts</h1>
<ul>
{% for post in posts %}
<li>{{ post.title }} - {{ post.created_at }}</li>
{% endfor %}
</ul>
</body>
</html>
Configuration des URL
Pour connecter des vues à des URL, vous devez définir des modèles d'URL. Créez un fichier nommé urls.py
dans le répertoire de votre application et ajoutez le code suivant:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
Ensuite, incluez les modèles d'URL de cette application dans le fichier urls.py
du projet principal:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
Exécution du serveur de développement
Après avoir configuré vos modèles, vues, modèles et URL, vous pouvez exécuter le serveur de développement Django pour voir votre application Web en action:
python manage.py runserver
Ouvrez un navigateur Web et accédez à http://127.0.0.1:8000/
pour voir votre application Web Django en cours d'exécution.
Conclusion
Django simplifie la création d'applications Web puissantes et robustes avec Python. Ce guide couvre les bases de la configuration d'un projet Django, de la création d'une application, de la définition de modèles, de la création de vues et de modèles, de la configuration d'URL et de l'exécution du serveur de développement. Avec Django, vous pouvez créer facilement des applications Web évolutives et maintenables.