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-flaskMôž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 baniekapliká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:
% 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 („/
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í.