PostgreSQL: Naudojant PostgreSQL su Django

Ši dokumentacija yra Pradžia vadovo dalis. Visą vadovą rasite čia: Kaip pradėti naudotis PostgreSQL.

👋 Sveiki atvykę į Stackhero dokumentaciją!

Stackhero siūlo paruoštą naudoti PostgreSQL debesijos sprendimą, kuris suteikia daugybę privalumų, įskaitant:

  • Neriboti ryšiai ir duomenų perdavimai.
  • Įtraukta PgAdmin žiniatinklio sąsaja.
  • Daugybė modulių įtraukti, tokių kaip PostGIS, TimescaleDB ir PgVector.
  • Lengvi atnaujinimai vienu paspaudimu.
  • Optimali veikla ir tvirta sauga, užtikrinama privačios ir dedikuotos VM.

Taupykite laiką ir supaprastinkite savo gyvenimą: tereikia 5 minučių, kad išbandytumėte Stackhero PostgreSQL debesijos prieglobos sprendimą!

Jei jis dar nėra įdiegtas, įdiekite psycopg modulį, kuris bus naudojamas prisijungti prie PostgreSQL:

pip install psycopg

Šiame pradiniame žingsnyje slaptažodį saugosite tiesiogiai settings.py faile. Šis metodas skirtas tik testavimui, nes jis nėra saugus. Vėliau šioje dokumentacijoje rasite geros praktikos pavyzdį.

Atidarykite settings.py failą ir pridėkite šią konfigūraciją:

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

Atsargiai: šis pavyzdys nerekomenduojamas gamybai ir skirtas tik testavimo tikslams!

Kai jūsų ryšys veikia, galite naudoti saugesnį būdą saugoti kredencialus. Šis pavyzdys naudoja django-environ ir saugo kredencialus .env faile.

  1. Įdiekite django-environ:

    pip install django-environ
    
  2. Atidarykite settings.py failą ir pakeiskite jį taip:

    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. Atidarykite arba sukurkite .env failą tame pačiame kataloge kaip settings.py ir pridėkite:

    STACKHERO_POSTGRESQL_HOST=<XXXXXX>.stackhero-network.com
    STACKHERO_POSTGRESQL_ADMIN_PASSWORD=<ADMIN_PASSWORD>
    
  4. Galiausiai pridėkite .env prie savo .gitignore failo, kad užtikrintumėte, jog jūsų kredencialai nėra saugomi jūsų Git saugykloje:

echo ".env" >> .gitignore