Couverture de livre électronique gratuite Cours de création de système avec Python et Django terminé

Cours de création de système avec Python et Django terminé

Nouveau cours

176 pages

Formulaires dans Django : authentification et autorisation dans Django

Capítulo 125

Temps de lecture estimé : 3 minutes

+ Exercice
Audio Icon

Écouter en audio

0:00 / 0:00

L'authentification et l'autorisation sont des composants essentiels de toute application Web. Dans Django, ces fonctionnalités sont fournies par le module d'authentification de Django. Ce module fournit un moyen d'authentifier les utilisateurs, d'associer des informations supplémentaires à ces utilisateurs et de restreindre l'accès à certaines parties de votre site en fonction des autorisations des utilisateurs.

Pour commencer, vous devrez ajouter le module d'authentification à votre projet Django. Cela peut être fait en ajoutant « django.contrib.auth » à votre liste d'INSTALLED_APPS dans vos paramètres Django. Vous devrez également ajouter « django.contrib.auth.middleware.AuthenticationMiddleware » à votre MIDDLEWARE_CLASSES.

Une fois le module d'authentification installé et configuré, vous pouvez commencer à l'utiliser dans vos formulaires. Django fournit un certain nombre de formulaires prédéfinis que vous pouvez utiliser pour les tâches d'authentification courantes. Par exemple, le formulaire d'authentification permet aux utilisateurs de saisir leur nom d'utilisateur et leur mot de passe, puis authentifie l'utilisateur en fonction de ces informations.

Pour utiliser le formulaire d'authentification, vous devrez d'abord l'importer dans votre fichier de vues. Cela peut être fait avec la ligne de code suivante :

à partir de django.contrib.auth.forms importer AuthenticationForm

Ensuite, vous pouvez créer une instance du formulaire dans votre vue. Cela peut être fait comme suit :

Continuez dans notre application.

Vous pouvez écouter le livre audio écran éteint, recevoir un certificat gratuit pour ce cours et accéder également à 5 000 autres cours en ligne gratuits.

Ou poursuivez votre lecture ci-dessous...
Download App

Téléchargez l'application

form = AuthentificationForm()

Ce formulaire peut ensuite être transmis à votre modèle pour être rendu. Le formulaire d'authentification comprend des champs pour le nom d'utilisateur et le mot de passe, ainsi qu'une logique pour valider ces champs et authentifier l'utilisateur.

En plus du formulaire d'authentification, Django fournit également des formulaires pour l'enregistrement des utilisateurs, la modification du mot de passe et la réinitialisation du mot de passe. Ces formulaires fonctionnent de manière similaire au formulaire d'authentification, mais incluent une logique supplémentaire pour gérer ces tâches spécifiques.

En plus de fournir des formulaires d'authentification, Django fournit également un moyen de restreindre l'accès à certaines parties de votre site en fonction des autorisations des utilisateurs. Cela se fait via le système d'autorisation de Django.

Le système d'autorisation vous permet de définir des autorisations pour différents types d'objets sur votre site, puis de vérifier ces autorisations lors du traitement des demandes. Par exemple, vous pouvez définir une autorisation qui autorise uniquement les utilisateurs authentifiés à accéder à une certaine page.

Pour utiliser le système d'autorisation, vous devrez d'abord définir vos autorisations. Cela peut être fait dans votre fichier de modèles, en utilisant l'option « autorisations » dans la classe Meta de votre modèle. Par exemple, le code suivant définit une autorisation qui permet à l'utilisateur d'afficher un certain objet :

classe MonModèle(models.Model): #... classe Méta : autorisations = ( ("view_mymodel", "Peut voir mon modèle"), )

Une fois vos autorisations définies, vous pouvez vérifier ces autorisations sur vos vues à l'aide de la méthode 'has_perm'. Par exemple, le code suivant vérifie si l'utilisateur est autorisé à afficher un objet MyModel :

si request.user.has_perm('myapp.view_mymodel'): # L'utilisateur a la permission de voir l'objet autre: # L'utilisateur n'a pas la permission de voir l'objet

En résumé, Django fournit un certain nombre d'outils puissants pour gérer l'authentification et l'autorisation dans vos applications Web. À l'aide des formulaires d'authentification et du système d'autorisation fournis, vous pouvez facilement créer un système de gestion des utilisateurs sécurisé et flexible pour votre site Web.

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

Quel est le rôle du module d'authentification Django dans une application web ?

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

Vous avez raté! Essayer à nouveau.

Chapitre suivant

Formulaires dans Django : Travailler avec une base de données dans Django

Arrow Right Icon
Téléchargez l'application pour obtenir une certification gratuite et écouter des cours en arrière-plan, même avec l'écran éteint.