Zakaj Flask in ne Django


Pred nekaj meseci sem se spravil k učenje Djanga, pred mesec nazaj pa sem odkril Flask, ki mi je takoj postal všeč. Za razliko od Djanga je Flask mikro spletno ogrodje. Preprost jedro, a razširljivo. S tem mislim na to, da vsebuje tiste funkcije spletne strani, ki so potrebni za njeno delovanje – privzeto ne vsebuje dodatkov, ki omogočajo npr. validacijo obrazcev, prijavo odjavo na stran, delo s podatkovno bazo in obrazci (kar Django vsebuje). Na razvijalčevih ramenih je, da se odloči, kaj bo njegova stran vsebovala in to za lažje delo tudi namesti preko dodatkov. Torej namesti le tisto, kar potrebuje. Edina odvisnost Flaska je Werkzeug, zbirka WSGI pripomočkov, drugače pa se namesti tudi s sistemom podlog Jinja2, a je tudi ta zamenljiv – in btw, ta sistem je hitrejši kot tisti od Djanga).

Flask ((FUN FACT: Nastal je pred tremi letoma iz prvoaprilske šale)) se mi zdi zato veliko lažji za učenje od Djanga, saj je bolj streightforward, saj poleg dobre dokumentacije o samem mikro spletnem ogrodju obstaja dokumentacija (ali pa vsaj API reference) še za dodatke, ki so jih povečini spisali razvijalci, ki ne stojijo za Flaskom. Seznam najbolj pogostih dodatkov se nahaja na uradni strani projekta: http://flask.pocoo.org/extensions

Primer preproste spletne strani (hello world) v Flasku:

[python]
from flask import Flask
app = Flask(__name__)

@app.route(‘/’)
def hello_world():
return ‘Hello World!’

if __name__ == ‘__main__’:
app.run()
[/python]

V terminalu (konzoli) poženete skripto in se odpravite na http://localhost:5000.