Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Validation et nettoyage des entrées
Ne fais jamais confiance aux données envoyees par un utilisateur. C'est la regle d'or de la sécurité web. Django fournit des validators dans django.core.validators pour vérifier les données.
Voici quelques validators utiles :
from django.core.validators import ( validate_email, # vérifie le format email URLValidator, # vérifie le format URL RegexValidator, # vérifie un pattern regex MinValueValidator, # vérifie une valeur minimale MaxValueValidator, # vérifie une valeur maximale )
Chaque validator leve une ValidationError si la valeur est invalide.
Écris une classe InputCleaner avec les méthodes :
- clean_email(self, email) : strip + lowercase + validation avec validate_email. Retourne l'email nettoye ou None si invalide.
- clean_url(self, url) : strip + validation avec URLValidator(). Retourne l'URL ou None si invalide.
- clean_username(self, username) : strip + validation avec RegexValidator pour accepter uniquement les lettres, chiffres et underscores (pattern r'^[a-zA-Z0-9_]+$'). Retourne le username ou None si invalide ou vide.