Späť na blog

Používanie PostgreSQL s Django na Ubuntu 21.04 Server

Používanie PostgreSQL s Django na Ubuntu 21.04 Server

Django je známy webový framework, ktorý zjednodušuje proces vytvárania robustných, škálovateľných, bezpečných a vysoko výkonných webových aplikácií. Je to open-source projekt napísaný v jazyku Python. Môžete si pozrieť podrobnejšie informácie o Django tu.

Každá webová aplikácia vyžaduje databázu ako backend na správu údajov. Django podporuje rôzne databázové nástroje ako backend, napríklad MySQL, PostgreSQL, SQLite atď. PostgreSQL je výkonný, open-source objektovo-relačný databázový systém. Je známy svojou spoľahlivosťou, škálovateľnosťou, bezpečnosťou a robustnou sadou funkcií. Môžete zistiť viac o PostgreSQL tu.

V tejto príručke predvedieme integráciu PostgreSQL ako backendu na ukážkovej aplikácii Django.

Požiadavky

Práca s Django vyžaduje určité systémové konfigurácie.

Táto príručka tiež ukáže, ako používať rôzne moduly a knižnice Pythonu, ktoré sú potrebné pre funkčnú aplikáciu Django.

Krok 1. Inštalácia potrebných komponentov

Aby náš projekt fungoval, potrebujeme mať v našom systéme Ubuntu nainštalovaných niekoľko dôležitých balíkov. Našťastie sú všetky priamo dostupné z oficiálnych repozitárov balíkov Ubuntu. Tieto balíky zahŕňajú komponenty Pythonu a komponenty databázy (PostgreSQL).

Najprv spustite terminál a aktualizujte vyrovnávaciu pamäť balíkov APT:

Using PostgreSQL with Django 1

Ďalej nainštalujte balíky:

Using PostgreSQL with Django 2

Krok 2. Príprava databázy

PostgreSQL je teraz nainštalovaný a pripravený na použitie. Ďalej vytvoríme vyhradenú databázu a používateľa pre našu aplikáciu Django. Mať vyhradeného používateľa je výhodné pre správu databázy a oprávnení.

Počas inštalácie PostgreSQL vytvorí vyhradeného používateľa postgres. Má oprávnenie vykonávať akékoľvek administratívne úlohy v PostgreSQL. Pristúpte k postgres účtu:

Mali by ste sa ocitnúť v novej relácii shellu pod používateľom postgres. Potom otvorte shell PostgreSQL:

Teraz vytvoríme vyhradenú databázu pre našu aplikáciu Django. Odporúča sa dať jej názov zhodný s aplikáciou Django:

Ďalej vytvoríme vyhradeného databázového používateľa. Tohto používateľa budeme používať na prístup k databáze vyhradenej pre Django:

Ďalším krokom je úprava niekoľkých parametrov pripojenia pre nového používateľa. Pomáha to urýchliť databázové operácie, pretože nebude potrebné dopytovať hodnoty pri každom nadviazaní pripojenia. Spustite nasledujúce príkazy:

Poďme si tieto príkazy rýchlo rozobrať:

  • Nastavujeme predvolené kódovanie na UTF-8. To je to, čo Django očakáva pri interakcii s databázami.

  • Predvolená schéma transakcií je nastavená na „read committed“, takže čítania z nepotvrdených transakcií sú blokované.

  • Časové pásmo by malo byť nastavené podľa polohy.

Ak si nie ste istí názvom časového pásma, nasledujúci príkaz zobrazí zoznam všetkých časových pásiem podporovaných PostgreSQL:

Using PostgreSQL with Django 4

Nakoniec udeľte novému používateľovi úplné oprávnenia k databáze vyhradenej pre Django:

Naša práca s PostgreSQL je teraz hotová. Ukončite psql shell and log out of the postgres relácie.

Step 3. Installing Django

Nakonfigurovali sme potrebný databázový server pre našu aplikáciu Django. Teraz nainštalujeme a nakonfigurujeme vyhradenú aplikáciu Django. Hoci je Django priamo k dispozícii z oficiálneho repozitára Ubuntu, neodporúčame použiť túto metódu. Nainštaluje totiž Django v rámci celého systému. Pre lepšiu flexibilitu a jednoduchosť správy namiesto toho nainštalujeme Django vo virtuálnom prostredí. Inštalácia a konfigurácia Django vo virtuálnom prostredí Pythonu je štandardným postupom.

Python má modul virtualenv ktorý vytvára virtuálne prostredie Pythonu v cieľovom umiestnení. Prostredie získa vlastnú kópiu binárnych súborov a konfigurácií Pythonu. Vykonanie zmien vo virtuálnom prostredí nebude mať žiadny vplyv na zvyšok systému.

Nainštalujte virtualenv:

Using PostgreSQL with Django 5

Ďalej je naším cieľom mať vyhradený adresár na vytvorenie virtuálneho prostredia Pythonu. Poslúži ako základ pre našu aplikáciu Django. Pre ukážku bude názov našej aplikácie sample_app. Vytvorte nový adresár:

Zmeňte aktuálny aktívny adresár a vytvorte virtuálne prostredie:

Potom aktivujte virtuálne prostredie:

Virtuálne prostredie je teraz pripravené a funkčné. Potom použijeme pip na inštaláciu Django a psycopg2 (adaptér Pythonu pre PostgreSQL):

Using PostgreSQL with Django 6

Nakoniec môžeme vytvoriť nový projekt Django pomocou nástrojov Django. Vygeneruje podadresár s rovnakým názvom, ktorý bude obsahovať všetky kódy, a riadiaci skript v aktuálnom adresári:

Step 4. Configuring the Django Project

Projekt Django má všetky základné nástroje na to, aby fungoval ako webová aplikácia. Aby sme ho integrovali s našou databázou, budeme musieť vykonať niekoľko úprav v jeho konfiguračných súboroch.

Otvorte súbor settings.py v textovom editore:

Prejdite nadol na sekciu DATABASES. V predvolenom nastavení je nakonfigurovaná na používanie SQLite:

Pre náš účel zmeňte kód nasledovne:

Tu hovoríme Django, aby použil adaptér psycopg2 na komunikáciu s databázou. Deklarujeme tu tiež všetky potrebné informácie o databáze, ako je názov databázy spolu s používateľským menom a heslom vyhradeného používateľa.

Po dokončení súbor uložte a zatvorte editor.

Step 5. Migrating the Database

Django je nakonfigurovaný na prístup k našej databáze PostgreSQL. Teraz môžeme migrovať dátovú štruktúru do našej databázy. V Django je to známe ako migrácia.

Ak chcete migrovať zmeny v databáze, vyvolajte riadiaci skript manage.py:


Using PostgreSQL with Django 7

Ďalej vytvorte superpoužívateľa pre našu Django aplikáciu:

Using PostgreSQL with Django 8

Tento účet superpoužívateľa bude fungovať ako administrátorský účet pre našu Django aplikáciu.

Krok 6. Testovanie zmien

Doteraz sme v našej Django aplikácii vykonali viacero úprav. Je čas skontrolovať, či všetko funguje tak, ako má. Overíme to spustením aplikácie a prístupom do administračného panelu.

Keďže Django aplikáciu vyvíjame lokálne, spustíme server na localhost. Tradične ho spustíme na porte 8000. Ak máte nakonfigurovaný firewall, musí povoliť prevádzku na porte 8000. Prečítajte si viac o základoch UFW tu.

Spustite Django server:

Otvorte URL adresu v prehliadači:

Using PostgreSQL with Django 9

Mali by ste sa dostať na stránku úspešnej inštalácie Django. Pre prístup na stránku administrácie Django prejdite na nasledujúcu URL adresu:

Using PostgreSQL with Django 10

Na prihlásenie musíte použiť superpoužívateľa, ktorého sme vytvorili:

Voilà! Úspešne sme sa dostali do administračného panelu!

Keď skončíte s prehliadaním, stlačte Ctrl + C v konzole, aby ste zastavili Django server.

Záverečné myšlienky

V tomto návode sme úspešne demonštrovali vytvorenie ukážkovej Django aplikácie a konfiguráciu PostgreSQL ako jej databázového backendu. Hoci SQLite vo všeobecnosti viac než postačuje na pokrytie potrieb počas vývoja (a nenáročného produkčného použitia), väčšina projektov výrazne získa prechodom na plnohodnotnejší DBMS. PostgreSQL je skvelou voľbou pre výkon a škálovateľnosť.

Django je všestranný webový framework, ktorý dokáže spolupracovať s mnohými technológiami. Pozrite si ďalšie cloudové návody, ktoré demonštrujú použitie Django:

Príjemnú prácu s počítačom!

author

Preslav Dobrev

Autor · CloudSigma

Preslav Dobrev je kreatívny dizajnér v spoločnosti CloudSigma, ktorý sa zameriava na konzistentnú firemnú identitu prostredníctvom tradičných a inovatívnych marketingových kanálov. Dokáže brilantne spájať umeleckú víziu so strategickým marketingom, čím vytvára pôsobivé príbehy značky.

Komentáre

Zatiaľ žiadne komentáre. Buďte prvý.