PostgreSQL: Gebruik van PostgreSQL met Django

Deze documentatie maakt deel uit van de Aan de slag-gids. Bekijk de volledige gids hier: Hoe te beginnen met PostgreSQL.

👋 Welkom bij de Stackhero documentatie!

Stackhero biedt een volledig beheerde PostgreSQL cloud dienst, ontworpen voor betrouwbaarheid en snelheid:

  • Onbeperkte connecties en dataverkeer voor moeiteloze schaalbaarheid.
  • PgAdmin webinterface inbegrepen voor intuïtief databasebeheer.
  • Populaire extensies inbegrepen, zoals PostGIS, TimescaleDB en PgVector.
  • Eenvoudige, one-click updates houden uw database veilig en up-to-date.
  • Hoge performance en sterke beveiliging op private, dedicated infrastructuur.

U kunt binnen enkele minuten aan de slag met Stackhero's PostgreSQL cloud hosting. Profiteer van een betrouwbare database-ervaring en bespaar waardevolle tijd bij het beheren van uw data.

Als het nog niet is geïnstalleerd, installeer dan de psycopg module, die zal worden gebruikt om verbinding te maken met PostgreSQL:

pip install psycopg

In deze eerste stap slaat u het wachtwoord direct op in het settings.py bestand. Deze methode is alleen voor testen omdat het niet veilig is. Later in deze documentatie vindt u een voorbeeld van best practice.

Open het settings.py bestand en voeg de volgende configuratie toe:

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.postgresql',
    'HOST': '<XXXXXX>.stackhero-network.com',
    'PORT': <PORT>,
    'OPTIONS': {
      'sslmode': 'require',
    },
    'NAME': 'admin',
    'USER': 'admin',
    'PASSWORD': '<ADMIN_PASSWORD>'
  }
}

Let op: dit voorbeeld wordt niet aanbevolen voor productie en is alleen bedoeld voor testdoeleinden!

Zodra uw verbinding werkt, kunt u een veiligere methode aannemen om inloggegevens op te slaan. Het volgende voorbeeld gebruikt django-environ en slaat inloggegevens op in een .env bestand.

  1. Installeer django-environ:

    pip install django-environ
    
  2. Open het settings.py bestand en wijzig het als volgt:

    import environ
    env = environ.Env()
    environ.Env.read_env()
    
    DATABASES = {
      'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'HOST': env('STACKHERO_POSTGRESQL_HOST'),
        'PORT': <PORT>,
        'OPTIONS': {
          'sslmode': 'require',
        },
        'NAME': 'admin',
        'USER': 'admin',
        'PASSWORD': env('STACKHERO_POSTGRESQL_ADMIN_PASSWORD')
      }
    }
    
  3. Open of maak het .env bestand in dezelfde directory als settings.py en voeg toe:

    STACKHERO_POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com
    STACKHERO_POSTGRESQL_ADMIN_PASSWORD=<ADMIN_PASSWORD>
    
  4. Voeg ten slotte .env toe aan uw .gitignore bestand om ervoor te zorgen dat uw inloggegevens niet in uw Git-repository worden opgeslagen:

echo ".env" >> .gitignore