# Django 5.2.8 documentation

# `django.contrib.postgres`

PostgreSQL har ett antal funktioner som inte delas av de andra databaserna som Django stöder. Denna valfria modul innehåller modellfält och formulärfält för ett antal PostgreSQL-specifika datatyper.

Observera

Django är, och kommer att fortsätta att vara, ett databasagnostiskt webbramverk. Vi vill uppmuntra dem som skriver återanvändbara applikationer för Django-gemenskapen att skriva databasagnostisk kod där det är praktiskt möjligt. Vi är dock medvetna om att verkliga projekt som skrivs med Django inte behöver vara databasagnostiska. Faktum är att när ett projekt når en viss storlek är det redan en betydande utmaning att ändra den underliggande datalagret och det kommer sannolikt att kräva att kodbasen ändras på vissa sätt för att hantera skillnader mellan datalagren.

Django ger stöd för ett antal datatyper som bara fungerar med PostgreSQL. Det finns ingen grundläggande anledning till varför (till exempel) en `contrib.mysql`-modul inte finns, förutom att PostgreSQL har den rikaste funktionsuppsättningen av de databaser som stöds så att dess användare har mest att vinna.

- PostgreSQL-specifika aggregeringsfunktioner
  - Aggregeringsfunktioner för allmänt bruk
  - Aggregerade funktioner för statistik
  - Exempel på användning
- PostgreSQL-specifika databasbegränsningar
  - `Uteslutningsbegränsning`
- PostgreSQL-specifika frågeuttryck
  - uttryck för `ArraySubquery()`
- PostgreSQL-specifika modellfält
  - Indexering av dessa fält
  - `ArrayField`
  - `HStoreField`
  - Område Fält
- PostgreSQL-specifika formulärfält och widgets
  - Fält
  - Widgets
- PostgreSQL-specifika databasfunktioner
  - `RandomUUID`
  - `TransaktionNu`
- PostgreSQL-specifika modellindex
  - `BloomIndex`
  - `BrinIndex`
  - `BTreeIndex`
  - `GinIndex`
  - `GistIndex`
  - `HashIndex`
  - `SpGistIndex`
  - uttryck för `OpClass()`
- PostgreSQL-specifika uppslagningar
  - Likhet mellan trigram
  - `Unaccent`
- Migrering av databaser
  - Skapa tillägg med hjälp av migreringar
  - `CreateExtension`
  - `BloomExtension`
  - `BtreeGinExtension`
  - `BtreeGistExtension`
  - `CITextExtension`
  - `CryptoExtension`
  - `HStoreExtension`
  - `TrigramExtension`
  - `UnaccentExtension`
  - Hantera kollationer med hjälp av migreringar
  - Samtidiga indexoperationer
  - Lägga till begränsningar utan att tvinga fram validering
- Fulltextsökning
  - Uppslagsordet `search`
  - `SökVektor`
  - `Sökfråga`
  - `SearchRank`
  - `Sökhuvud`
  - Ändra sökkonfigurationen
  - Viktning av frågor
  - `Lexeme`
  - Prestanda
  - Likhet mellan trigram
- Validerare
  - `KeysValidator`
  - Validatorer för intervall