1. Projektiga alustamine

Kasutame selles juhises Flaski projekti jaoks PyCharm Professional arenduskeskkonda. Selleks, et Flaski rakendusi luua, võib kasutada ka mõnda muud enda valitud tekstiredaktorit.

Loo PyCharm keskkonnas uus projekt ning vali menüüribalt Flask. Kui sa ei näe menüüribal Flaski, siis järelikult ei kasuta sa PyCharm Professional versiooni, vaid PyCharm Community versiooni.

Kui kasutad PyCharm Community versiooni, VS Code'i või tavalist terminali, saad Flaski projekti alustada ka käsitsi.

Windows:

py -m venv .venv
.venv\Scripts\activate
pip install Flask

macOS ja Linux:

python3 -m venv .venv
source .venv/bin/activate
pip install Flask

Pärast Flaski paigaldamist loo projekti juurkausta fail app.py ning kaustad static ja templates.

Projekti juurkaustas on 3 alamkausta ja 1 fail. Nende funktsioon on järgmine:

1.1. .venv

Koht, kus hoiustatakse alla laetud Pythoni pakke. Kui teed käsureal pip install “paki-nimi”, siis allalaetud failid paigutatakse .venv kausta. Seal kaustas midagi muutma hakata ei ole mõttekas.

Lähemalt Pythoni venvi kohta

Soovitus: See kaust ei ole GIT versioonihalduses ning selleks, et meeskonnas oleksid kõigil samad pakid, on mõistlik kohe peale projekti loomist jooksutada käsklust, mis salvestab allalaetud pakkide nimekirja faili:

pip freeze > requirements.txt

Kui hakkad töötama teiste kirjutatud koodiga, siis on alati mõistlik enne alustamist vajalikud pakid paigaldada. Selleks kasuta käsklust:

pip install -r requirements.txt

1.2. static

Staatiliste failide hoiustamiseks mõeldud kaust. See on koht, kus võib hoida CSS ja JavaScripti faile. Samuti hea koht piltide ja muu sellise jaoks, mida sinu veebilehel võib vaja minna.

1.3. templates

Kaust kus hoiustatakse HTML faile. Siin saad hoiustada oma vaadete jaoks vajalikke HTML faile ning ka komponentide faile, millest need vaated koosnevad.

1.4. app.py

Flaski rakenduse põhifail, kus defineeritakse peamine loogika ja funktsionaalsus.

Mida see fail sisaldab:

from flask import Flask

app = Flask(__name__) # Rakenduse instants


@app.route('/') # Defineerib kus on leht kättesaadav. Hetkel localhost:5000/
def hello_world():
    return 'Hello World!' # Mida võid näha kui navigeerud sellele domeenile.


if __name__ == '__main__': # Rakenduse käivitamiseks vajalik
    app.run()

Soovitus: Pane rakendus käima ning proovi seda faili muuta! Ära unusta peale muutmist lehte uuendada.

Rakenduse käivitamine käsurealt:

flask --app app run --debug