db.dobo.sk

Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 12. Django.

1 komentár

Vývoj na Djangu je dnes už evergreenom a tak si urobím pár poznámok (pre niekoho možno triviálnych, ale ja sa k tomu dostávam sporadicky a preto potrebujem pár základných poznámok k architektúre a tak).

Obecne a virtualenv

    1. Django štandardne spolupracuje s postgresom cez psycopg2 libku (ver.3 je zrovna na spadnutie). Poskytuje to pristup k štandardným python API, management connection threadov a hlavne ORM. Takže neváhaj a pip install psycopg2
    2. Je extra doporučované mať poriadok v projektoch, verzovaní a tak. Django je rozľahlý framework a nie je nič horšie, než na ňom vyvíjať a potom u prenosu do produkcie zistiť, že polka vecí chýba (binárky, dependencie). Preto je veľmi doporučované používať virtualenv, kde sa do projektového foldru dá všetko pohromade (aj python a tak). Virtualenv (aspoň pre mňa) je dobrým kompromisom – základné veci to vie, ale človek nestrávi jeho učením celý deň. Prostredie, ktoré sa vytvorí virtualenvom je niečo ako projekt, ktorý môže zapuzdrovať viacero aplikácií (viď vysvetlenie tu, alebo skvelý komentár na stackoverflow)
    3. Ergo, príprava prostredia, ktoré mi vyhovuje (všetko pod rootom):
      # pip install virtualenv
      # mkdir /django_projects
      # cd /django_projects
      # virtualenv /django_project/proj_1/ = vytvorí virtuálne prostredie pre projekt (= najastejšie jedno webov sídlo). Je možné mať 1 prostredie pre viacej projektov, ale pokiaľ budem mať napr. rozdielne verzie pythonu, alebo rozdielne databáze, tak pre každý z tychto pripadov nové prostredie
      # source /django_projects/proj_1/bin/activate = pomocou bash source aktivovanie virtuálneho prostredia projektu. Jeho štart je indikovaný tým, že máš na prompte (proj_1) a vo foldri konfigurák prostredia projektu pyvenv.cfg
      (proj_1) # pip install psycopg2
      (proj_1) # pip install django
      (proj_1) [root@bin]# django-admin.py startproject app_1 . = vytvorenie app_1 vo virt_1. Vytvorí sa folder app_1 a v ňom priamo základné django súbory
    4. Konfigurácia spojenia s postgresom: defaultne je pre django nakonfigurované sqlite, takže otvoriť settings.py

      DATABASES = {

      'default': {
           ‘ENGINE’: ‘django.db.backends.postgresql_psycopg2’,
           ‘NAME’: ”,
           ‘USER’: ”,
           ‘PASSWORD’: ”,
           ‘HOST’: ”,
           ‘PORT’: ”,    }
      }
    5. Django je konfigurovaný tak, že natiahne do DB user schema (vytvorí svoju štruktúru aplikačných userov):
      (proj_1)# python manage.py makemigrations
      (proj_1)# python manage.py migrate
      (proj_1)# python manage.py createsuperuser

 

    1. Tak a štart pseudowebového servera a odskúšanie interface Djanga…
      (proj_1)python manage.py runserver 0.0.0.0:6666

 

  1. Otvor wen na 127.0.0.1:6666, pokiaľ sa chceš prihlásiť do admin rozhrania, tak 127.0.0.1:6666/admin/

Tvorba aplikácie

sd

píše: ďobo

November 24th, 2020 o 11:11 pm

chlievik: django,postgresql

1 odpoveď to 'Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 12. Django.'

Subscribe to comments with RSS or TrackBack to 'Postgres – vsetko, co si chtel vediet, ale bal sa spytat svojho seniora, aby si nevypadal ako jelito 12. Django.'.

  1. Skvelé vysvetlenie zapuzdrenia projektov a apiek (hierarchizácia) tu:
    https://timmyomahony.com/blog/updated-django-project-structure-or-folder-layout

    ďobo

    25 Nov 20 at 3:08

okomentuj