Django UndantagLink to this heading

Django tar upp några av sina egna undantag samt standard Python-undantag.

Django Core UndantagLink to this heading

Django core undantagsklasser definieras i django.core.exceptions.

AppRegistryNotReadyLink to this heading

exception AppRegistryNotReadyLink to this definition

Detta undantag uppstår när man försöker använda modeller innan app loading process, som initierar ORM, är klar.

ObjektDoesNotExistLink to this heading

exception ObjectDoesNotExistLink to this definition

Basklassen för Model.DoesNotExist undantag. En try/except för ObjectDoesNotExist kommer att fånga DoesNotExist undantag för alla modeller.

See get().

ObjectNotUpdatedLink to this heading

exception ObjectNotUpdatedLink to this definition

The base class for Model.NotUpdated exceptions. A try/except for ObjectNotUpdated will catch NotUpdated exceptions for all models.

See save().

EmptyResultSetLink to this heading

exception EmptyResultSetLink to this definition

EmptyResultSet kan uppstå under frågegenereringen om en fråga inte kommer att returnera några resultat. De flesta Django-projekt kommer inte att stöta på detta undantag, men det kan vara användbart för att implementera anpassade uppslagningar och uttryck.

Full resultatuppsättningLink to this heading

exception FullResultSetLink to this definition

FullResultSet kan uppstå under frågegenereringen om en fråga kommer att matcha allt. De flesta Django-projekt kommer inte att stöta på detta undantag, men det kan vara användbart för att implementera anpassade uppslagningar och uttryck.

FieldDoesNotExistLink to this heading

exception FieldDoesNotExistLink to this definition

Undantaget FieldDoesNotExist skapas av en modells metod _meta.get_field() när det begärda fältet inte finns i modellen eller i modellens föräldrar.

Flera objekt återlämnadeLink to this heading

exception MultipleObjectsReturnedLink to this definition

Basklassen för Model.MultipleObjectsReturned undantag. En try/except för MultipleObjectsReturned kommer att fånga MultipleObjectsReturned undantag för alla modeller.

See get().

”Misstänkta operationerLink to this heading

exception SuspiciousOperationLink to this definition

Undantaget SuspiciousOperation uppstår när en användare har utfört en åtgärd som bör betraktas som misstänkt ur ett säkerhetsperspektiv, t.ex. manipulering av en sessionskaka. Underklasser till SuspiciousOperation inkluderar:

  • DisallowedHost

  • DisallowedModelAdminLookup

  • DisallowedModelAdminToField

  • DisallowedRedirect

  • ogiltig sessionsnyckel

  • ”Begäran om uppgifter alltför stor

  • ”Misstänkt filhantering

  • ”Misstänksamt flerdelat formulär

  • ”Misstänkt session

  • TooManyFieldsSent

  • TooManyFilesSent

Om ett undantag från SuspiciousOperation når ASGI/WSGI-hanterarnivån loggas det på Error-nivån och resulterar i en HttpResponseBadRequest. Se logging documentation för mer information.

PermissionDeniedLink to this heading

exception PermissionDeniedLink to this definition

Undantaget PermissionDenied uppstår när en användare inte har behörighet att utföra den begärda åtgärden.

ViewDoesNotExistLink to this heading

exception ViewDoesNotExistLink to this definition

Undantaget ViewDoesNotExist tas upp av django.urls när en begärd vy inte finns.

MiddlewareNotUsedLink to this heading

exception MiddlewareNotUsedLink to this definition

Undantaget MiddlewareNotUsed uppstår när en middleware inte används i serverkonfigurationen.

”Korrekt konfigureradLink to this heading

exception ImproperlyConfiguredLink to this definition

Undantaget ImproperlyConfigured uppstår när Django på något sätt är felaktigt konfigurerat - till exempel om ett värde i settings.py är felaktigt eller omöjligt att separera.

FieldErrorLink to this heading

exception FieldErrorLink to this definition

Undantaget FieldError uppstår när det finns ett problem med ett modellfält. Detta kan inträffa av flera skäl:

  • Ett fält i en modell krockar med ett fält med samma namn från en abstrakt basklass

  • En oändlig loop orsakas av att man beställer

  • Ett nyckelord kan inte tolkas från filterparametrarna

  • Ett fält kan inte bestämmas utifrån ett nyckelord i frågeparametrarna

  • En join är inte tillåten på det angivna fältet

  • Ett fältnamn är ogiltigt

  • En fråga innehåller ogiltiga order_by-argument

FieldFetchBlockedLink to this heading

exception FieldFetchBlockedLink to this definition

Raised when a field would be fetched on-demand and the FETCH_RAISE fetch mode is active.

ValideringsfelLink to this heading

exception ValidationErrorLink to this definition

Undantaget ValidationError uppstår när data inte klarar validering av formulär eller modellfält. Mer information om validering finns i Form and Field Validation, Model Field Validation och Validator Reference.

fEL SOM INTE ÄR FÄLTFELLink to this heading

NON_FIELD_ERRORSLink to this definition

”ValidationError” som inte hör till ett visst fält i ett formulär eller en modell klassificeras som ”Non_field_errors”. Denna konstant används som en nyckel i ordböcker som annars mappar fält till deras respektive lista över fel.

BadRequestLink to this heading

exception BadRequestLink to this definition

Undantaget BadRequest uppstår när begäran inte kan behandlas på grund av ett klientfel. Om ett BadRequest undantag når ASGI/WSGI hanterarnivå resulterar det i en HttpResponseBadRequest.

Beställning avbrutenLink to this heading

exception RequestAbortedLink to this definition

Undantaget RequestAborted uppstår när en HTTP-kropp som läses in av hanteraren avbryts mitt i processen och klientanslutningen stängs, eller när klienten inte skickar data och når en timeout där servern stänger anslutningen.

Den är intern för HTTP-hanteringsmodulerna och det är osannolikt att du kommer att se den någon annanstans. Om du ändrar HTTP-hanteringskoden bör du ta upp detta när du stöter på en avbruten begäran för att se till att sockeln stängs på ett snyggt sätt.

SynkronOnlyOperationLink to this heading

exception SynchronousOnlyOperationLink to this definition

Undantaget SynchronousOnlyOperation uppstår när kod som endast är tillåten i synkron Python-kod anropas från ett asynkront sammanhang (en tråd med en asynkron händelseslinga som körs). Dessa delar av Django är i allmänhet starkt beroende av tråd-säkerhet för att fungera och fungerar inte korrekt under coroutines som delar samma tråd.

Om du försöker anropa kod som endast är synkron från en asynkron tråd, skapa då en synkron tråd och anropa den i den. Du kan åstadkomma detta med asgiref.sync.sync_to_async().

Undantag för URL-resolverLink to this heading

Undantag för URL-resolver definieras i django.urls.

Resolver404Link to this heading

exception Resolver404Link to this definition

The Resolver404 exception is raised by resolve() if the path passed to resolve() doesn’t map to a view. It’s a subclass of django.http.Http404.

NoReverseMatchLink to this heading

exception NoReverseMatchLink to this definition

Undantaget NoReverseMatch skapas av django.urls när en matchande URL i din URLconf inte kan identifieras baserat på de parametrar som anges.

DatabasundantagLink to this heading

Databasundantag kan importeras från django.db.

Django omsluter standarddatabasundantagen så att din Django-kod har en garanterad gemensam implementering av dessa klasser.

exception ErrorLink to this definition
exception InterfaceErrorLink to this definition
exception DatabaseErrorLink to this definition
exception DataErrorLink to this definition
exception OperationalErrorLink to this definition
exception IntegrityErrorLink to this definition
exception InternalErrorLink to this definition
exception ProgrammingErrorLink to this definition
exception NotSupportedErrorLink to this definition

Django wrappers för databasundantag beter sig exakt likadant som de underliggande databasundantagen. Se PEP 249, Python Database API Specification v2.0, för ytterligare information.

A __cause__ attribute is set with the original (underlying) database exception, allowing access to any additional information provided.

exception models.ProtectedErrorLink to this definition

Utlöses för att förhindra radering av refererade objekt när django.db.models.PROTECT används. models.ProtectedError är en underklass till IntegrityError.

exception models.RestrictedErrorLink to this definition

Utlöses för att förhindra radering av refererade objekt när django.db.models.RESTRICT används. models.RestrictedError är en underklass till IntegrityError.

HTTP-undantagLink to this heading

HTTP-undantag kan importeras från django.http.

OläsligtPostFelLink to this heading

exception UnreadablePostErrorLink to this definition

UnreadablePostError uppstår när en användare avbryter en uppladdning.

Undantag för sessionerLink to this heading

Sessionsundantag definieras i django.contrib.sessions.exceptions.

Session avbrutenLink to this heading

exception SessionInterruptedLink to this definition

SessionInterrupted tas upp när en session förstörs i en samtidig begäran. Det är en underklass av BadRequest.

Undantag för transaktionerLink to this heading

Transaktionsundantag definieras i django.db.transaction.

TransactionManagementErrorLink to this heading

exception TransactionManagementErrorLink to this definition

TransactionManagementError uppstår vid alla problem som har med databastransaktioner att göra.

Undantag i testramverketLink to this heading

Undantag som tillhandahålls av paketet django.test.

RedirectCycleErrorLink to this heading

exception client.RedirectCycleErrorLink to this definition

RedirectCycleError uppstår när testklienten upptäcker en loop eller en alltför lång kedja av omdirigeringar.

Python-undantagLink to this heading

Django tar också upp inbyggda Python-undantag när det är lämpligt. Se Python-dokumentationen för ytterligare information om Built-in Exceptions.