Django est un framework de développement Web Python qui suit le modèle de conception MVC (Model-View-Controller). Il est connu pour son efficacité et sa flexibilité, permettant aux développeurs de créer des applications Web complexes avec moins de code et d'efforts. L'une des fonctionnalités les plus importantes de Django est le système de modèles, qui permet la séparation entre la logique de programmation et la présentation des données.
Que sont les modèles ?
Les modèles sont des fichiers contenant du code HTML mélangé à un langage de balisage Django spécial. Ce langage de balisage vous permet d'insérer des variables, des conditions, des boucles et d'autres éléments de programmation dans HTML. Lorsqu'un modèle est rendu, Django remplace les balises par le contenu correspondant, générant le HTML final qui sera envoyé au navigateur.
Comment fonctionnent les modèles dans Django ?
Dans Django, chaque vue est responsable du traitement d'une requête HTTP et de la génération d'une réponse. Cette réponse est généralement un document HTML créé à partir d’un modèle. La vue récupère les données nécessaires du modèle, transmet ces données au modèle et Django se charge du rendu du modèle avec ces données.
Les modèles Django sont organisés selon un système hiérarchique. Chaque modèle peut étendre un modèle de base, héritant de tout son contenu. Cela vous permet de créer une structure commune pour toutes les pages du site, évitant ainsi la répétition de code. Par exemple, nous pourrions avoir un modèle de base contenant l'en-tête et le pied de page du site, et chaque page du site étend ce modèle de base, en ajoutant uniquement du contenu spécifique à cette page.
Comment créer un modèle dans Django ?
Pour créer un modèle dans Django, nous devons d'abord créer un répertoire appelé « modèles » dans notre dossier d'application. Dans ce répertoire, nous créons un fichier avec l'extension .html pour chaque modèle que nous souhaitons créer.
Le contenu d'un modèle est essentiellement HTML, mais nous pouvons utiliser le langage de balisage de Django pour insérer des variables, des conditions, des boucles et d'autres éléments de programmation. Les variables sont placées entre doubles accolades {{ }} et représentent les données transmises par la vue. Les conditions et les boucles sont insérées entre accolades et pourcentages {% %} et vous permettent de contrôler le flux d'exécution du modèle.
Par exemple, pour afficher une liste de produits, nous pourrions avoir un modèle comme celui-ci :
<html> <body> <h1>Liste de produits</h1> <ul> {% pour le produit dans les produits %} <li>{{ product.name }} : {{ product.price }}</li> {% fin pour %} </ul> </body> </html>
Dans cet exemple, « produits » est une variable qui doit être transmise par la vue et « produit » est une variable qui représente chaque produit de la liste. La boucle for parcourt la liste des produits et, pour chaque produit, insère un élément de liste avec le nom et le prix du produit.
Conclusion
Le système de modèles de Django est un outil puissant qui vous permet de créer des interfaces utilisateur dynamiques et réutilisables. Grâce à lui, nous pouvons séparer la logique de programmation de la présentation des données, rendant le code plus organisé et plus facile à maintenir. De plus, Django propose de nombreuses autres fonctionnalités qui facilitent le développement d'applications web, comme un ORM (Object-Relational Mapping) pour l'accès aux bases de données, un système d'authentification des utilisateurs, un système d'administration et bien plus encore. /p>