2. Projekti mall¶
Alustades ükskõik millist tarkvaraprojekti, on hea tava juba alguses teha ära mõningad tegevused, et pärast lihtsam oleks. Siin juhises on kirjeldatud need tavad Flaski projekti jaoks.
Loo
static
kausta CSS fail nimegastyle.css
. See fail on sinu rakenduse põhiline stiilifail, kus saad kirjeldada oma rakenduse välimust, mis kehtib igal vaatel.
Soovitus: Lisa ka fail nimega normalize.css
, mille sisu võid leida
siit
Loo
templates
kausta HTML fail nimegabase.html
. Kõik, mida kirjeldad selles failis, on nähtav igal vaatel sinu rakenduses. NB! See kehtib vaid juhul kui ülejäänud vaated seda importivad!
Mall base.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!--
Kui lisasid normalize.css faili siis eemalda see kommentaarist
<link rel="stylesheet" href="{{ url_for('static', filename='normalize.css') }}">
-->
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
<title>{% block title %}{% endblock %}</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
Soovitus: Siia faili võid lisada näiteks oma navigatsiooniriba kujunduse, mis on igal vaatel samas kohas ja samasugune.
Loo
templates
kausta HTML failindex.html
, mis kasutabbase.html
faili.
Mall index.html
{% extends 'base.html' %}
{% block title %}
Home
{% endblock %}
{% block content %}
<h1>Welcome to the home page!</h1>
{% endblock %}
Täienda
app.py
, et sinu muudatused oleksid veebis nähtavad.
Mall app.py
from flask import Flask
from flask import render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template('index.html')
if __name__ == '__main__':
app.run()
Projekt on nüüd valmis seadistatud. Jooksuta:
flask --debug run
Soovitus: Mitmeliikmelises meeskonnas koodi kirjutamisega kaasneb tihtipeale see, et igaühel on enda stiil ja arusaam kuidas miski peaks välja nägema ja toimima. See võib pikapeale tekitada probleeme koodi struktuuri ning loetavuse osas. Stiili ühtlustamiseks ja bugide vältimiseks on mõistlik kasutusele võtta erinevaid tööriistu, näiteks:
Stiili ühtlustamine Black formatter
Bugide leidmine PyLint
Soovitus: Seadista ka .gitignore
fail ning lisa sinna failid, mida sa
ei soovi teistega jagada. See võib välja näha näiteks selline:
Mall .gitignore
.idea
__pycache__
.venv