Exceptions de DjangoLien vers cette rubrique
Django peut aussi bien générer des exceptions qu’il définit lui-même que des exceptions Python standards.
Exceptions principales de DjangoLien vers cette rubrique
Les classes d’exception de base de Django sont définies dans django.core.exceptions.
AppRegistryNotReadyLien vers cette rubrique
- exception AppRegistryNotReadyLien vers cette définition
Cette exception est générée lorsqu’on essaie d’utiliser des modèles avant que le processus de chargement des applications, qui initialise l’ORM, soit terminé.
ObjectDoesNotExistLien vers cette rubrique
- exception ObjectDoesNotExistLien vers cette définition
La classe de base des exceptions
DoesNotExist; une clausetry/exceptavecObjectDoesNotExistintercepte les exceptionsDoesNotExistde tous les modèles.Consultez
get()pour plus d’informations sur les exceptionsObjectDoesNotExistetDoesNotExist.
FieldDoesNotExistLien vers cette rubrique
- exception FieldDoesNotExistLien vers cette définition
L’exception
FieldDoesNotExistest produite par une méthode_meta.get_field()d’un modèle lorsque le champ demandé n’existe pas dans le modèle, ni dans les parents du modèle.
MultipleObjectsReturnedLien vers cette rubrique
- exception MultipleObjectsReturnedLien vers cette définition
L’exception
MultipleObjectsReturnedest générée par une requête lorsqu’un seul objet est attendu mais que la requête renvoie plusieurs objets. Une version de base de cette exception se trouve dansdjango.core.exceptions; chaque classe de modèle contient une version héritant de cette exception permettant d’identifier précisément le type d’objets renvoyés à plusieurs.Voir
get()pour plus d’informations.
SuspiciousOperationLien vers cette rubrique
- exception SuspiciousOperationLien vers cette définition
L’exception
SuspiciousOperationest générée lorsqu’un utilisateur effectue une opération considérée comme douteuse selon des critères de sécurité, comme lors de manipulations d’un cookie de session. Les sous-classes deSuspiciousOperationcomprennent :DisallowedHostDisallowedModelAdminLookupDisallowedModelAdminToFieldDisallowedRedirectInvalidSessionKeyRequestDataTooBigSuspiciousFileOperationSuspiciousMultipartFormSuspiciousSessionTooManyFieldsSent
Si une exception
SuspiciousOperationatteint le niveau du gestionnaire WSGI, elle est journalisée au niveauErroret produit une exceptionHttpResponseBadRequest. Consultez la documentation de la journalisation pour plus d’informations.
PermissionDeniedLien vers cette rubrique
- exception PermissionDeniedLien vers cette définition
L’exception
PermissionDeniedest générée lorsqu’un utilisateur ne possède pas la permission d’effectuer l’action demandée.
ViewDoesNotExistLien vers cette rubrique
- exception ViewDoesNotExistLien vers cette définition
L’exception
ViewDoesNotExistest générée pardjango.urlslorsqu’une vue demandée n’existe pas.
MiddlewareNotUsedLien vers cette rubrique
- exception MiddlewareNotUsedLien vers cette définition
L’exception
MiddlewareNotUsedest générée lorsqu’un middleware n’est pas utilisé dans la configuration du serveur.
ImproperlyConfiguredLien vers cette rubrique
- exception ImproperlyConfiguredLien vers cette définition
L’exception
ImproperlyConfiguredest générée lorsque la configuration de Django contient une erreur, par exemple si une valeur desettings.pyn’est pas correcte ou ne peut pas être lue correctement.
FieldErrorLien vers cette rubrique
- exception FieldErrorLien vers cette définition
L’exception
FieldErrorest générée lorsqu’il y a un problème avec un champ de modèle. Ceci peut arriver pour plusieurs raisons :Un champ de modèle est en conflit avec un champ de même nom provenant d’une classe de base abstraite.
Un ordre de tri provoque une boucle sans fin.
Un mot-clé ne peut pas être lu dans les paramètres d’un filtre.
Il n’est pas possible de faire correspondre un paramètre nommé d’une requête avec un champ.
Une jointure n’est pas autorisée sur le champ indiqué.
Un nom de champ n’est pas valide.
Une requête contient des paramètres
order_bynon conformes.
ValidationErrorLien vers cette rubrique
- exception ValidationErrorLien vers cette définition
L’exception
ValidationErrorest générée lorsque des données font échouer la validation de formulaire ou de champ de modèle. Pour plus d’informations sur la validation, consultez Validation des formulaires et des champs, Validation des champs de modèle et Référence de la validation.
NON_FIELD_ERRORSLien vers cette rubrique
- NON_FIELD_ERRORSLien vers cette définition
Les exceptions ValidationError qui ne sont pas liées à un champ particulier d’un formulaire ou d’un modèle sont classées comme NON_FIELD_ERRORS. Cette constante est utilisée comme clé dans des dictionnaires qui habituellement font correspondre des champs à leur liste d’erreurs respective.
Exceptions du résolveur d’URLLien vers cette rubrique
Les exceptions du résolveur d’URL sont définies dans django.urls.
Resolver404Lien vers cette rubrique
- exception Resolver404Lien vers cette définition
L’exception
Resolver404est générée pardjango.urls.resolve()si le chemin transmis àresolve()ne correspond à aucune vue. C’est une sous-classe dedjango.http.Http404.
NoReverseMatchLien vers cette rubrique
- exception NoReverseMatchLien vers cette définition
L’exception
NoReverseMatchest générée pardjango.urlslorsqu’aucune URL contenue dans votre configuration d’URL ne correspond aux paramètres fournis.
Exceptions de base de donnéesLien vers cette rubrique
Les exceptions de base de données peuvent être importées à partir de django.db.
Django adapte les exceptions de base de données standard afin que votre code Django puisse compter sur une implémentation commune de ces classes.
- exception ErrorLien vers cette définition
- exception InterfaceErrorLien vers cette définition
- exception DatabaseErrorLien vers cette définition
- exception DataErrorLien vers cette définition
- exception OperationalErrorLien vers cette définition
- exception IntegrityErrorLien vers cette définition
- exception InternalErrorLien vers cette définition
- exception ProgrammingErrorLien vers cette définition
- exception NotSupportedErrorLien vers cette définition
Les adaptateurs Django de ces exceptions de base de données se comportent exactement de la même manière que leurs exceptions sous-jacentes. Consultez la PEP 249, la version 2.0 de la spécification Python d’API de base de données, pour de plus amples informations.
Se conformant à PEP 3134, un attribut __cause__ est défini avec l’exception de base de données sous-jacente, permettant ainsi d’avoir accès à d’éventuelles informations complémentaires (notez que cet attribut est disponible aussi bien avec Python 2 que Python 3, même si PEP 3134 ne s’applique normalement qu’à Python 3). Afin d’éviter des différences inattendues avec Python 3, Django s’assure également que l’exception rendue disponible via __cause__ possède un attribut __traceback__ exploitable.
- exception models.ProtectedErrorLien vers cette définition
Cette exception est générée pour empêcher la suppression d’objets référencés lors de l’utilisation de django.db.models.PROTECT. models.ProtectedError est une sous-classe de IntegrityError.
Exceptions HttpLien vers cette rubrique
Les exceptions HTTP peuvent être importées à partir de django.http.
UnreadablePostErrorLien vers cette rubrique
- exception UnreadablePostErrorLien vers cette définition
L’exception
UnreadablePostErrorest générée lorsqu’un utilisateur annule un envoi de fichier.
Exceptions de transactionLien vers cette rubrique
Les exceptions de transactions sont définies dans django.db.transaction.
TransactionManagementErrorLien vers cette rubrique
- exception TransactionManagementErrorLien vers cette définition
L’exception
TransactionManagementErrorest générée lors de tout problème survenant en lien avec les transactions de bases de données.
Exceptions de l’infrastructure de testLien vers cette rubrique
Exceptions définies dans le paquet django.test.
RedirectCycleErrorLien vers cette rubrique
- exception client.RedirectCycleErrorLien vers cette définition
L’exception
RedirectCycleErrorest générée lorsque le client de test détecte une boucle ou une chaîne de redirection trop longue.
Exceptions PythonLien vers cette rubrique
Django génère également des exceptions intégrées de Python le cas échéant. Consultez la documentation de Python pour plus d’informations concernant les Built-in Exceptions.