Flask est un framework Web simple pour Python. Je pense que Sinatra est proche de cela dans Ruby.
Flask utilise un moteur de template appelé jinja2, qui donne l'impression d'écrire du HTML en texte brut. Je suis habitué à HAML, j'ai donc essayé d'utiliser hamlish-jinja, qui vous permet d'écrire des modèles de vue de type HAML dans Flask.
$ pip install Flask
$ pip install Hamlish-Jinja
.
├── app.py
└── templates
└── index.haml
app.py
from flask import Flask, render_template
from werkzeug import ImmutableDict
class FlaskWithHamlish(Flask):
jinja_options = ImmutableDict(
extensions=['jinja2.ext.autoescape', 'jinja2.ext.with_', 'hamlish_jinja.HamlishExtension']
)
app = FlaskWithHamlish(__name__)
app.jinja_env.hamlish_mode = 'indented'
app.jinja_env.hamlish_enable_div_shortcut = True
@app.route('/')
def index():
return render_template('index.haml')
if __name__ == '__main__':
app.run()
index.haml
%html
%head
%meta charset="utf-8"
%title
Hello World!
%body
%h1
Hello World!
$ python app.py
Accédez maintenant à localhost: 5000
sur votre navigateur Web. Vous devriez voir "Hello World!".
Flask semble placer les templates dans un répertoire nommé par défaut templates
.
Comme son nom l'indique, Hamlish est "semblable à HAML", pas HAML lui-même. Cet article a été utile pour connaître la différence.
Même dans l'exemple ci-dessus, dans HAML, ce devrait être % meta {charset:" utf-8 "}
, mais dans Hamlish, c'est % meta charset =" utf-8 "
.
app.jinja_env.hamlish_mode = 'indented'
app.jinja_env.hamlish_enable_div_shortcut = True
Spécification des options pour Hamlish. S'il vous plaît voir famille de tête hamlish-jinja pour voir quels types d'options sont disponibles.
Je pensais que Flask était très compact et bon. De plus, Hamlish semble rendre votre site Web amusant et net.
Essayez d'utiliser le framework d'application Web Flask J'ai beaucoup appris. Lisez simplement ceci et vous serez prêt à commencer à créer un petit site Web.
Je l'oublie toujours. Pour garantir que les modifications du fichier de vue prennent effet sans redémarrer le serveur
$ FLASK_DEBUG=1 python app.py
Et.
Recommended Posts