PostgreSQL: Verwendung von PostgreSQL mit Django
Diese Dokumentation ist Teil des Erste Schritte-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie man mit PostgreSQL beginnt.
👋 Willkommen in der Stackhero-Dokumentation!
Stackhero bietet eine einsatzbereite PostgreSQL-Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:
- Unbegrenzte Verbindungen und Datenübertragungen.
- PgAdmin Web-UI inklusive.
- Viele Module enthalten wie
PostGIS,TimescaleDBundPgVector.- Mühelose Updates mit nur einem Klick.
- Optimale Performance und robuste Sicherheit durch eine private und dedizierte VM.
Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die PostgreSQL-Cloud-Hosting-Lösung von Stackhero auszuprobieren!
Falls noch nicht installiert, installieren Sie das psycopg-Modul, das zur Verbindung mit PostgreSQL verwendet wird:
pip install psycopg
In diesem ersten Schritt speichern Sie das Passwort direkt in der settings.py-Datei. Diese Methode ist nur für Tests gedacht, da sie nicht sicher ist. Weiter in dieser Dokumentation finden Sie ein Beispiel für bewährte Praktiken.
Öffnen Sie die settings.py-Datei und fügen Sie die folgende Konfiguration hinzu:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'HOST': '<XXXXXX>.stackhero-network.com',
'PORT': <PORT>,
'OPTIONS': {
'sslmode': 'require',
},
'NAME': 'admin',
'USER': 'admin',
'PASSWORD': '<ADMIN_PASSWORD>'
}
}
Achtung: Dieses Beispiel wird nicht für die Produktion empfohlen und ist nur für Testzwecke gedacht!
Sobald Ihre Verbindung funktioniert, können Sie eine sicherere Methode zur Speicherung von Anmeldeinformationen übernehmen. Das folgende Beispiel verwendet django-environ und speichert Anmeldeinformationen in einer .env-Datei.
-
Installieren Sie
django-environ:pip install django-environ -
Öffnen Sie die
settings.py-Datei und ändern Sie sie wie folgt: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') } } -
Öffnen oder erstellen Sie die
.env-Datei im selben Verzeichnis wiesettings.pyund fügen Sie hinzu:STACKHERO_POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com STACKHERO_POSTGRESQL_ADMIN_PASSWORD=<ADMIN_PASSWORD> -
Fügen Sie schließlich
.envzu Ihrer.gitignore-Datei hinzu, um sicherzustellen, dass Ihre Anmeldeinformationen nicht in Ihrem Git-Repository gespeichert werden:
echo ".env" >> .gitignore