Image de l'article Création d'un projet Django : modèles et rendu

13.6. Création d'un projet Django : modèles et rendu

Page 64 | Écouter en audio

La création d'un projet Django implique plusieurs étapes, dont l'une des plus importantes est la création et le rendu du modèle. Django a été conçu pour aider les développeurs à créer efficacement des applications Web avec moins de code. Le système de modèles de Django est un élément crucial à cet égard, car il permet aux développeurs de créer des interfaces utilisateur complexes sans avoir à écrire beaucoup de code HTML.

Que sont les modèles ?

Les modèles sont des fichiers contenant du code HTML avec un balisage supplémentaire pour insérer des données dynamiques. En d'autres termes, un modèle est un fichier HTML qui contient des espaces réservés pour les données qui seront insérées lors du rendu du modèle.

Comment créer un modèle Django ?

Pour créer un modèle Django, vous devez créer un fichier HTML dans le répertoire des modèles de votre application. Par exemple, si vous disposez d'une application appelée « blog », vous pouvez créer un fichier appelé « post_list.html » dans le répertoire « blog/templates/blog ».

Le contenu de ce fichier pourrait ressembler à ceci :

{% étend 'blog/base.html' %} {% bloquer le contenu %}

Messages

{% pour la publication dans les publications %}

{{ post.title }>

{{ post.text|linebreaksbr }>

{% fin pour %} {% bloc de fin %}

Ceci est un exemple simple de modèle Django. Il étend un modèle de base (base.html) et définit un bloc de contenu. Dans ce bloc, il parcourt une liste de publications et affiche le titre et le texte de chaque publication. La balise '|linebreaksbr' est un filtre qui convertit les sauts de ligne en balises '
'.

Rendu du modèle

Le rendu d'un modèle est le processus de remplissage des espaces réservés avec des données réelles. Dans Django, cela se fait à l'aide de la fonction 'render()'. Cette fonction prend un objet HttpRequest, le nom d'un modèle et un dictionnaire de données, et renvoie un objet HttpResponse avec le contenu du modèle rendu.

Voici un exemple de la manière dont vous pouvez afficher le modèle « post_list.html » dans une vue :

à partir du rendu d'importation de Django.shortcuts def post_list (requête) : messages = Post.objects.all() return render(request, 'blog/post_list.html', {'posts': posts})

Cette fonction d'affichage récupère toutes les publications de la base de données, puis appelle la fonction 'render()' avec la requête, le nom du modèle et un dictionnaire contenant les publications. La fonction 'render()' restitue le modèle et renvoie le résultat sous forme de réponse HTTP.

Conclusion

La création et le rendu de modèles sont des éléments essentiels du développement d'applications Web avec Django. Les modèles vous permettent de créer facilement des interfaces utilisateur complexes, tandis que le rendu vous permet de remplir ces modèles avec des données dynamiques. Avec de la pratique, vous pouvez créer des applications Web puissantes et flexibles avec Django.

Ce n'est que le début. Vous pouvez faire bien plus avec les modèles Django, comme l'héritage de modèles, l'inclusion de modèles, les balises et filtres de modèles personnalisés, et bien plus encore. Explorez la documentation Django pour en savoir plus sur ces fonctionnalités avancées.

Répondez maintenant à l’exercice sur le contenu :

Qu'est-ce que la fonction 'render()' dans Django et comment est-elle utilisée ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Image de l'article Créer un projet Django : URL et routes

Page suivante de lebook gratuit :

65Créer un projet Django : URL et routes

4 minutes

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte