Migration vers Psycopg 3

Django 4.2 ajoute le support de Psycopg 3, le nouveau driver PostgreSQL pour Python. Psycopg 3 est asynchrone, plus performant et offre un meilleur support des types PostgreSQL. Le backend s'utilise avec 'django.db.backends.postgresql' et psycopg (sans le 2).

Configuration

python
# settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydb',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
        # Django détecte automatiquement psycopg vs psycopg2
        # pip install psycopg[binary]  # Psycopg 3
        # pip install psycopg2-binary  # Psycopg 2 (ancien)
    }
}

# Vérifier la version utilisée
# python -c "import psycopg; print(psycopg.__version__)"

Sources