13.4. Créer un projet Django : créer des modèles
Développer un projet Django implique plusieurs étapes essentielles, dont l'une des plus importantes est la création de modèles. Les modèles sont la couche d'abstraction des données que Django utilise pour structurer les informations de votre base de données. Ils constituent une représentation de haut niveau des tables de base de données et constituent un moyen pratique de créer, récupérer, mettre à jour et supprimer des enregistrements.
Pourquoi créer des modèles ?
Les modèles sont extrêmement utiles car ils vous permettent de travailler avec des données de manière Pythonique, plutôt que d'écrire des requêtes SQL. De plus, les modèles constituent également un emplacement pratique pour placer les méthodes liées à vos données. Par exemple, si vous disposez d'un modèle Utilisateur, vous pouvez disposer d'une méthode qui calcule l'âge de l'utilisateur en fonction de sa date de naissance.
Comment créer des modèles ?
Créer un modèle dans Django est assez simple. Tout d'abord, vous devez créer une nouvelle application Django (si vous n'en avez pas déjà une) à l'aide de la commande python manage.py startapp application_name
. Ensuite, dans le fichier models.py
de cette application, vous pouvez commencer à définir vos modèles.
Un modèle est une sous-classe de la classe django.db.models.Model
, et chaque attribut de la classe représente un champ dans la base de données. Par exemple, si nous voulions créer un modèle pour représenter un blog, nous pourrions faire quelque chose comme ceci :
à partir des modèles d'importation django.db
classe Blog (models.Model):
titre = models.CharField(max_length=200)
contenu = modèles.TextField()
pub_date = models.DateTimeField(auto_now_add=True)
Dans cet exemple, title
, content
et pub_date
sont des champs de la base de données. Les types de ces champs (CharField, TextField, DateTimeField) déterminent le type de données qu'ils peuvent contenir.
Utiliser les modèles
Une fois que vous avez défini vos modèles, vous devez dire à Django de créer les tables correspondantes dans la base de données. Cela se fait à l'aide de la commande python manage.py makemigrations
suivie de python manage.py migrate
. Les commandes créent un ensemble d'instructions pour modifier la base de données (migrations), puis appliquent ces instructions.
Une fois les tables créées, vous pouvez commencer à utiliser vos modèles pour créer, récupérer, mettre à jour et supprimer des enregistrements. Par exemple, pour créer un nouveau blog, vous pouvez procéder comme suit :
à partir du blog d'importation myapp.models
blog = Blog(title='Mon premier blog', content='Ceci est mon premier article de blog.')
blog.save()
Pour récupérer tous les blogs, vous pouvez :
blogs = Blog.objects.all()
En résumé, la création de modèles est une partie essentielle du développement d'un projet Django. Les modèles constituent un moyen pratique de structurer et de manipuler vos données, vous permettant de vous concentrer sur le développement de votre application au lieu de vous soucier des détails de la base de données.