banka

Vytvorte aplikáciu Hello World pomocou rámca Flask Framework

Vytvorte aplikáciu Hello World pomocou rámca Flask Framework
Tento článok sa bude zaoberať sprievodcom po písaní jednoduchej aplikácie typu ahoj svet pomocou rámca „Flask“ založeného na Pythone. Flask je možné použiť na vytvorenie minimálnych, rozšíriteľných a pokročilých webových aplikácií pomocou sady knižníc zahrnutých v jej module. Všetky ukážky kódu v tomto tutoriále sú testované na Ubuntu 20.10 s Pythonom verzie 3.8.6 a banka 1.1.2.

O banke

Flask je rámec pre vývoj webových aplikácií založený na Pythone, ktorý je špeciálne navrhnutý tak, aby bol pre začiatok minimálny. To pomáha pri rýchlom vytváraní prototypov, rýchlom vývoji a rýchlom nasadení. Akékoľvek pokročilé funkcie, ktoré musíte pridať do svojej webovej aplikácie, je možné pridať prostredníctvom rozšírení. Oficiálna stránka spoločnosti Flask sa označuje ako „mikro“ rámec, pretože všetky dôležité rozhodnutia necháva na samotných používateľov a rozhoduje len v ich mene. Používatelia si môžu zvoliť svoje vlastné šablónové stroje, knižnice na správu databáz, nástroje na overovanie formulárov atď., Aj keď Flask má niektoré rozumné predvolené hodnoty.

Inštalácia banky v systéme Linux

Ak používate Ubuntu, môžete Flask nainštalovať vykonaním príkazu uvedeného nižšie:

$ sudo apt nainštalovať python3-flask

Môžete sa vyhnúť použitiu verzie úložiska a nainštalovať najnovšiu verziu banky zo správcu balíkov „pip“ spustením nasledujúcich dvoch príkazov za sebou:

$ sudo apt nainštalovať python3-pip
$ pip3 inštalačná banka

Ak používate inú distribúciu systému Linux, vyhľadajte balíčky „Flask“ v správcovi balíkov alebo ho nainštalujte z nástroja na inštaláciu balíka „pip“. Ďalšie podrobné pokyny sú k dispozícii tu.

Po dokončení inštalácie môžete skontrolovať verziu banky pomocou nižšie uvedeného príkazu:

$ python3 -c "banka na import; print (banka.__verzia__) "

Model klient-server

Ako už bolo uvedené, Flask sa používa na vývoj webových aplikácií. Všetky architektúry vývoja webových aplikácií v Pythone a ďalších programovacích jazykoch zvyčajne používajú architektúru klient-server. Flask tiež používa model klient-server, kde môžu používatelia písať logiku na strane servera a vytvárať tak webové aplikácie alebo weby. „Klientom“ sa tu rozumie webový prehliadač alebo akákoľvek iná aplikácia, ktorá umožňuje vykreslenie webových stránok pomocou technológií HTML, JavaScript a CSS. Zatiaľ čo „server“ označuje miestny alebo vzdialený server, na ktorom sa vykonáva vaša aplikácia Flask napísaná v jazyku Python.

Keď spustíte aplikáciu Flask lokálne na svojom počítači, automaticky sa vytvorí lokálny server, ktorý bude slúžiť webovej aplikácii. Flask vygeneruje adresu URL localhost vo vašom termináli. Túto adresu URL môžete navštíviť v ľubovoľnom webovom prehliadači a zobraziť konečný výsledok. Môžete tiež nastaviť vzdialený server na uľahčenie komunikácie medzi klientom a serverom a spustenie vlastnej verejnej webovej stránky alebo webovej aplikácie.

Môžete vytvoriť kód HTML, JavaScript a CSS na strane klienta potrebný pre vašu webovú aplikáciu pomocou kódu na strane servera napísaného v jazykoch Flask a Python. Ale akonáhle je webová aplikácia nasadená a spustíte ju vo webovom prehliadači, vaša webová aplikácia neuvidí alebo neporozumie kódu Pythonu. Spracovať bude iba HTML, JavaScript a CSS, pretože webové prehliadače podporujú iba tieto technológie. Stále budete môcť komunikovať so serverom zo strany klienta pomocou požiadaviek HTTP. Môžete preniesť údaje z klienta na server, spracovať ich pomocou logiky na strane servera a vrátiť výsledok.

Takže v závislosti od typu webovej aplikácie, ktorú vyvíjate, sa možno budete musieť rozhodnúť, kde implementovať logiku: na strane servera alebo na strane klienta od prípadu k prípadu.

Jednoduchá aplikácia Hello World v banke

Nižšie uvedenú ukážku kódu môžete použiť na vytvorenie zjednodušenej aplikácie „Hello World“ v banke, ktorá vám umožní začať:

z banky na dovoz baniek
aplikácia = banka (__ meno__)
@app.trasa („/“)
def hello_world_app ():
message = "Hello World!!„
spätná správa

Prvý príkaz vo vyššie uvedenej ukážke kódu importuje triedu „Flask“ z modulu „flask“. Po importovaní budete môcť používať všetky metódy dostupné v triede „Flask“.

V nasledujúcom príkaze sa vytvorí nová inštancia triedy „Flask“ a názov súboru sa k nej zadá ako argument. Ak práve používate jeden “.py “súbor bez ďalšieho„ __init__.py “súbor, ktorý sa zvyčajne používa pri vytváraní štruktúry súborov pre balík Python, jeho názov bude mať pevnú hodnotu„ __main__ “. Argument „__name__“ informuje banku, kde má hľadať súbory súvisiace s aktuálnou aplikáciou banky, ktorá sa práve vykonáva. Namiesto hlavného argumentu „__name__“ môžete tiež dodať vlastnú cestu k svojmu hlavnému súboru Flask. Väčšina vývojárov ale zvyčajne používa iba názov „__name__“ a zdá sa, že ide o štandardný postup.

Ďalej aplikácia „dekorácia“.trasa “je pripojená k funkcii„ hello_world_app “. Funkcie zdobenia rozširujú alebo upravujú funkciu, ku ktorej sú pripojené, bez toho, aby ich skutočne zmenili. Tu „aplikácia.Route ”decorator sa používa na určenie cesty URL, kde bude bežať pripojená funkcia. Symbol „/“ hovorí banke, aby vykonala funkciu na „/“ URL, čo je skratka pre „root“ doménu alebo „root“ URL. Napríklad ak je adresa URL vašej aplikácie „app.com “, funkcia sa spustí pre„ app.com “. Môžete to tiež zmeniť na niečo iné. Napríklad pomocou dekorátora „@app.route ('/ helloworld') “, môžete funkciu namapovať na„ app.com / helloworld ”URL.

Nakoniec sa funkcia „hello_world_app“ použije na vrátenie obsahu, ktorý chcete zobraziť vo webovom prehliadači, keď je spustená vaša webová aplikácia.

Spustenie aplikácie Flask

Ak chcete spustiť aplikáciu Flask v systéme Linux, musíte spustiť príkaz v nasledujúcom formáte:

$ export FLASK_APP = hlavný.py
$ spustenie banky

Zmeniť „hlavný.py ”meno podľa potreby tak, aby zodpovedalo vášmu vlastnému .Súbor „py“, do ktorého ste napísali kód banky. Druhý príkaz spustí vašu aplikáciu Flask. Môžete tiež spustiť tento alternatívny príkaz:

$ FLASK_APP = hlavný.py banka beží

Po spustení týchto príkazov by sa mal zobraziť tento výstup:

Stačí otvoriť webovú adresu uvedenú v termináli vo webovom prehliadači, aby ste videli svoju aplikáciu v akcii.

Aplikáciu Flask môžete spustiť v režime ladenia pomocou premennej prostredia „FLASK_ENV“ v nasledujúcom formáte:

$ FLASK_ENV = vývoj FLASK_APP = hlavný.py banka beží

Používanie šablónového modulu Jinja2

Flask používa šablónu „Jinja2“ na uľahčenie písania HTML kódu v Pythone. Môžete ho použiť na nastavenie značky pre „Hello World!!”Správa.

Vytvorte nový adresár s názvom „šablóny“, kde je umiestnený váš hlavný skript banky. V adresári „template“ vytvorte nový súbor s názvom „hw_template.html “. Otvorte „hw_template.html ”a vložte do neho nasledujúci kód:


Ahoj svet!!
% if color%

Ahoj svet!!


% else%

Ahoj svet!!


% koniec Ak %

Tento kód je napísaný v syntaxi, ktorej program „Jinja2“ rozumie. Môžete si prečítať dokumentáciu „Jinja2“, ktorá je k dispozícii tu. Značka šablóny kontroluje, či jej bola odovzdaná premenná s názvom „farba“. Ak áno, zmení farbu „Hello World!!Správa využívajúca hodnotu z premennej „color“, ktorá jej bola odovzdaná.

Ak chcete preniesť premennú do šablóny „Jinja2“, musíte napísať kód v nasledujúcom formáte:

@app.trasa („/“)
def hello_world_app ():
vrátiť render_template ('hw_template.html ', color = "red")

Metóda „render_template“ sa používa na vykreslenie značiek zo súboru šablóny „Jinja2“. Môžete mu dodať názov šablóny, ktorú chcete vykresliť, a všetky argumenty, ktoré chcete šablóne odovzdať. „Hw_template.html ”šablóna použitá vyššie spracuje„ farebnú “premennú potom, čo jej kód banky odovzdá„ farebnú “premennú s hodnotou„ červená “. Po spustení ukážky kódu uvedenej vyššie by ste mali získať nasledujúci výsledok:

Hodnoty premenných môžete preniesť aj zo samotnej adresy URL. Nižšie si pozrite ukážku kódu:

@app.trasa („/“)
@app.trasa („/")
def hello_world_app (color = "blue"):
vrátiť render_template ('hw_template.html ', farba = farba)

K funkcii „hello_world_app“ sú pripojené dve cesty alebo trasy URL. Keď navštívite koreňovú doménu (príklad „aplikácia.com “), uvidíte„ Hello World!!Správa v modrej farbe ako predvolená hodnota pre premennú „color“ je definovaná ako „modrá“ a toto je hodnota, ktorú odovzdávate aj do šablóny „Jinja2“.

Druhá cesta definovaná „@app.trasa („/') ”Používa špeciálnu syntax. V symboloch „<>“ môžete definovať ľubovoľné premenné, ktoré sa majú odovzdať funkcii „hello_world_app“. Predvolená hodnota pre túto premennú je definovaná ako argument pre funkciu „hello_word_app“. Potom odovzdáte svoju vlastnú premennú ako argument metóde „render_template“ a nastavíte jej hodnotu na premennú, ktorú ste definovali, zatiaľ čo funkciu zdobíte novou vlastnou cestou.

Napríklad „Hello World !!Správa „sa zmení na červenú, keď navštívite aplikáciu.com / red “, ale pri návšteve aplikácie zostane modrá.com “. Tu je vzájomné porovnanie:

Záver

Flask je výkonný rámec pre vývoj webových aplikácií, ktorý možno použiť na vytváranie jednoduchých aj pokročilých aplikácií. Tento tutoriál vysvetľuje hlavne vytvorenie jednoduchého „Hello World!!”Aplikácia. Môžete ho pripojiť k databáze a pomocou rozšírení ešte rozšíriť jej funkčnosť. V dokumentácii k banke sa dozviete viac o správe databáz a rozšírení.

Hry Najlepšie hry z príkazového riadku pre systém Linux
Najlepšie hry z príkazového riadku pre systém Linux
Príkazový riadok nie je pri použití systému Linux iba vaším najväčším spojencom - môže byť tiež zdrojom zábavy, pretože ho môžete použiť na hranie mno...
Hry Najlepšie aplikácie na mapovanie gamepadu pre Linux
Najlepšie aplikácie na mapovanie gamepadu pre Linux
Ak radi hráte hry v systéme Linux s gamepadom namiesto typického systému vstupu pre klávesnicu a myš, máte tu niekoľko užitočných aplikácií. Mnoho hie...
Hry Užitočné nástroje pre hráčov systému Linux
Užitočné nástroje pre hráčov systému Linux
Ak radi hráte hry v systéme Linux, je pravdepodobné, že ste na vylepšenie herného zážitku použili aplikácie a pomôcky ako Wine, Lutris a OBS Studio. O...