15.10. Modèles dans Django : Vues dans Django
Page 84 | Écouter en audio
Les vues dans Django sont le composant essentiel de toute application Django. Ils sont responsables du traitement des requêtes HTTP et du renvoi d’une réponse HTTP. En d’autres termes, les Vues constituent l’interface entre l’application et les utilisateurs. Ils sont créés dans le fichier vues.py au sein de chaque application Django.
15.10.1. Que sont les vues ?
Dans Django, une Vue est une fonction Python qui prend une requête web et renvoie une réponse web. Cette réponse peut être le HTML d'une page web, une redirection, une erreur 404, un document XML, une image ou toute autre chose. qui peut être envoyé via HTTP. La vue elle-même ne contient pas de logique métier, elle délègue simplement au modèle approprié et affiche la réponse appropriée.
15.10.2. Comment créer une vue ?
Pour créer une vue dans Django, vous devez définir une fonction dans vues.py. Cette fonction doit accepter un argument : un objet HttpRequest. Et il devrait renvoyer un objet HttpResponse. Par exemple :
```python depuis django.http importer HttpResponse def ma_vue (demande) : return HttpResponse("Bonjour tout le monde !") ```C'est la vue la plus simple possible dans Django. Pour appeler la vue, nous devons la mapper à une URL - et pour cela nous avons besoin d'une URLconf.
15.10.3. urlconf
Pour désigner l'URL qui mènera à notre vue, nous devons créer un mappage d'URL. Cela se fait dans le fichier urls.py. Le mappage d'URL est une table des matières pour votre application Django, contenant un mappage entre les URL et les fonctions View.
Par exemple :
```python à partir du chemin d'importation de Django.urls à partir de .views importer my_view modèles d'URL = [ chemin('bonjour/', ma_vue), ] ```L'URL /hello appellera désormais la fonction my_view et affichera "Hello World !".
15.10.4. Vues basées sur les classes
Django prend également en charge les vues basées sur les classes. Il s'agit d'une forme plus complexe de vues qui sont utiles lorsque votre interface utilisateur commence à réutiliser du code commun. Les vues basées sur les classes vous permettent de structurer vos vues et de réutiliser le code en tirant parti de l'héritage et du mixage.
Par exemple :
```python à partir de django.views importer la vue depuis django.http importer HttpResponse classe MyView(View): def get (soi, demande): return HttpResponse('Bonjour tout le monde !') ```Pour mapper une vue basée sur une classe à une URL, vous devez appeler la méthode as_view() dans l'URLconf :
```python à partir du chemin d'importation de Django.urls à partir de .views importer MyView modèles d'URL = [ chemin('bonjour/', MyView.as_view()), ] ```Les vues dans Django sont un élément fondamental de toute application Django. Ils vous permettent de structurer votre application de manière logique et de réutiliser le code lorsque cela est possible. Comprendre le fonctionnement des vues est une étape essentielle pour devenir un développeur Django efficace.
15.10.5. Conclusion
Les vues dans Django sont un composant crucial de l'architecture MVC (Model-View-Controller) du framework. Ils fonctionnent comme un pont entre les modèles et les modèles. Grâce aux vues, nous pouvons accéder aux données contenues dans les modèles, appliquer une logique métier et transmettre ces données aux modèles, où elles seront rendues et présentées à l'utilisateur.
Les vues peuvent être créées sous forme de fonctions simples ou de classes, offrant une grande flexibilité aux développeurs. Quelle que soit l'approche choisie, il est important de se rappeler que toutes les vues doivent renvoyer un objet HttpResponse, soit directement, soit via un modèle.
Enfin, pour qu'une vue soit accessible, elle doit être mappée à une URL spécifique via le système URLconf de Django. Ce système vous permet de définir des itinéraires d'URL de manière claire et organisée, facilitant la maintenance et l'évolutivité de l'application.
Répondez maintenant à l’exercice sur le contenu :
Quelle est la fonction des vues dans Django et comment sont-elles créées ?
Tu as raison! Félicitations, passez maintenant à la page suivante
Vous avez raté! Essayer à nouveau.
Page suivante de lebook gratuit :