Cuprins
Sunt momente când vrem să dezvoltăm aplicații, dar nu vrem să începem de la zero, pentru aceasta există infinități de cadre în piață, cu toate acestea, cu cât este mai complet și mai puternic cadruCu cât amprenta și curba de învățare pot fi mai mari. Acest lucru ne face să pierdem interesul pentru dezvoltarea aplicației noastre sau putem petrece mai mult timp decât este necesar.Având în vedere cele de mai sus, un număr considerabil de așa-numiți microframe, care sunt ecosisteme de lucru care au elementele necesare pentru a evita să pornim de la zero atunci când ne dezvoltăm aplicația, dar dimensiunea lor este minimă, oferindu-ne doar ceea ce este necesar pentru a începe fără a fi nevoiți să ne inundăm capul cu mult material.
În Piton sunt multe dintre acestea microframe, cu toate acestea, există unul care iese în evidență datorită documentației și comunității sale excelente, acesta este Balon, care cu câteva biblioteci și componente ne permite să începem o dezvoltare fără a pierde din vedere scalabilitatea și modularitatea.
InstalareInstalarea formală a Balon abia și durează câteva minute, totuși pentru un beneficiu maxim trebuie mai întâi să ne stabilim mediul de lucru, pentru aceasta trebuie să instalăm și să configurăm virtualenv, care este un instrument care ne permite să avem diferite medii sub Piton în sistemul nostru, astfel încât să nu trebuie să instalăm nimic la nivel global.
Pentru instalare virtualenv pur și simplu trebuie să îndeplinim următoarele cerințe:
1- Instalare Python 2.7 sau mai mare, în funcție de sistemul nostru de operare, procesul va fi diferit, dar pentru majoritatea distribuțiilor Linux aceasta este deja instalată implicit. În Windows trebuie doar să instalați utilizând descărcarea corespunzătoare sistemului nostru.
2- Odată ce avem Piton, trebuie să instalăm pip, acesta este un instrument care ne permite să facem instalarea într-un mod simplu și prin consola de comandă a diferitelor pachete către Piton. În Ubuntu de exemplu, doar puneți în consola de comandă:
apt-get install python-setuptoolsȘi apoi alergăm:
easy_install pipÎn Windows pur și simplu trebuie să localizați descărcarea corespunzătoare setuptools.py Și mai târziu getpip.py ambele fișiere trebuie executate cu Piton din consola de comandă.
3- În cele din urmă putem instala virtualenv la plasarea pe consolă pip instala virtualenv, ceea ce ne va oferi posibilitatea de a ne crea mediile virtuale.
Pentru a crea un mediu virtual, trebuie pur și simplu să creăm un folder care să conțină proiectul nostru și apoi să plasăm comanda în cadrul acestuia:
virtualenv proiectul nostruUnde "proiectul nostru”Va fi numele mediului virtual.
O singura data virtualenv a creat mediul, trebuie să îl activăm, pentru aceasta, în funcție de sistemul în care ne aflăm, trebuie să facem următoarele, în Ubuntu, de exemplu, ne plasăm pur și simplu în mediul nostru și plasăm următoarea comandă:
coș sursă / activațiDacă suntem în Windows, am face următoarele:
Scripturi / activareÎn cele din urmă am avea un mediu activat așa cum vedem în următoarea imagine:
Modul în care putem vizualiza în consolă numele mediului nostru deja activat apare între paranteze.
Deoarece avem toate cerințele anterioare îndeplinite, acum dacă putem face instalarea microframe BalonPentru a face acest lucru în consola noastră de mediu virtual, scriem pur și simplu următoarele:
pip instala balonDacă totul a decurs bine, vom obține ceva de genul a ceea ce vedem în următoarea imagine:
Vedem cum în cele din urmă ne spune că a fost instalat cu succes Balon pe lângă dependențele sale, cu aceasta suntem gata să începem să dezvoltăm aplicațiile noastre cu aceasta microframe.
Acum vom crea prima noastră aplicație, în acest caz vom face clasicul "Salut Lume!" cu care putem înțelege câteva lucruri interesante despre lucrul cu Balon. Vom avea nevoie de un editor de text simplu sau poate de unii SDI ce sprijin Piton, vă recomandăm să utilizați Text sublim, sau poate Notepad ++ ambele opțiuni ne permit să evidențiem cuvintele cheie ale limbii.
În mediul nostru vom crea un fișier numit app.py și în interiorul acestuia vom plasa următorul cod:
din flask import Flaskapp = Flask (__ name __) @ app.route ('/') def hello_world (): returnează 'Hello World !!!' if __name__ == '__main__': app.run ()Începem prin importarea cadrului, pentru aceasta mai întâi indicăm acest lucru din bibliotecă balon să importăm clasa Balon. Apoi definim că aplicația noastră va fi o instanță a acelei clase. Creăm un decorator @ app.route (/) ceea ce va indica faptul că calea care trebuie definită pentru a utiliza funcția de mai jos este rădăcina.
Următorul act ne creăm funcția Salut Lume() și va returna un mesaj sub forma unui șir. În cele din urmă executăm metoda app.run () cu care aplicația noastră va fi ridicată.
Pentru a vedea acest lucru, mergem pur și simplu la consola mediului nostru virtual și scriem:
python app.pyAceasta ar trebui să afișeze un mesaj ca următorul pe consolă:
Vedem că ne spune că aplicația rulează 127.0.0.1 în port 5000 așa că punem aceste informații în browserul nostru și vom vedea rezultatul ca în următoarea imagine:
Cu aceasta avem prima noastră aplicație realizată cu Balon și nu ne-a luat câteva minute.
Datorită naturii micro a Balon și, de asemenea, că obiectivul său este să ne lase să lucrăm în modul în care ne simțim cel mai confortabil, inițial nu generează nicio structură de dosare pentru aplicația noastră, deci ne oferă libertatea de a crea structura noastră în modul pe care îl considerăm potrivit.
RestricţieSingura restricție este că nu putem folosi numele flask.py pentru fișierele noastre, deoarece acest lucru ar intra în conflict cu fișierul principal al cadrului nostru, orice altceva este destul de flexibil.
Configurarea de bază a folderelor recomandate constă dintr-un folder principal cu numele proiectului, în cadrul acestuia vom avea fișierul principal care pornește aplicația, precum și câteva foldere suplimentare, primul este cel al fișiere statice la fel ca imaginile și foile de stil, al doilea este folderul șabloane numit șabloane, unde vom avea fișierele care ne vor ajuta să generăm vizualizări cu HTML pentru utilizatorul final al aplicației. Să vedem în următoarea imagine cum arată această structură:
Mod implicit Balon utilizări jinja2 ca motor de șablon, totuși acest lucru poate fi schimbat de altul, dar înainte de a renunța la utilizarea acestuia, putem vedea ce ne oferă.
Jinja2Este un motor complet care oferă posibilitatea interpretării unor instrucțiuni pentru a face șabloanele noastre elemente dinamice care completează diferitele părți ale aplicației noastre, obiectivul este să trebuie să scriem cea mai mică cantitate de cod, dar acoperind cel mai mare număr de cazuri și funcționalități .
Sintaxa este foarte asemănătoare cu motorul șablon al DjangoDeci, dacă am lucrat cu acest cadru, probabil că ne vom simți foarte confortabil.
Mod implicit Balon nu are niciunul ORM, deci dacă vom lucra cu Baze de date, sau ne construim propria noastră ORM sau folosim una care este deja disponibilă în comunitate, dacă luăm această a doua opțiune pe care o putem lua în considerare Flask-SQLAlchemy.
Aceasta este o extensie pentru a putea folosi popularul SQLAlchimie ceea ce ne permite să stabilim conexiuni prin Piton cu diferitele motoare Baze de date, Ce MySQL sau chiar alte motoare non-relaționale precum MongoDB.
Ideea din spatele unui ORM este să poți interoga într-un mod care nu o face depinde de sintaxa SQL, deci dacă vrem să schimbăm motorul Bază de date, aplicația noastră nu ar trebui să sufere modificări, spre deosebire de cazul în care scriem direct Cod SQL, caz în care ar trebui să schimbăm instrucțiunile în consecință.
Cu aceasta am terminat acest tutorial, am văzut doar un mic procent din ceea ce putem realiza BalonCu toate acestea, este suficient să ne dăm seama de marele său potențial, mai ales atunci când trebuie să începem un proiect rapid și fără prea multe bagaje. Marea sa popularitate se datorează faptului că, cu structura sa modulară și extensibilă, ne permite să folosim multe componente pe care le putem cunoaște deja din alte evoluții și nu ne limitează să lucrăm într-un mod special, spre deosebire de cadre precum Django unde avem un mod foarte particular de a face lucrurile, pe lângă toate componentele care trebuie moștenite inițial pentru a crea o aplicație.