Flask ist ein einfaches Webframework für Python. Ich denke, Sinatra ist dem in Ruby nahe.
Flask verwendet eine Vorlagen-Engine namens jinja2, mit der Sie das Gefühl haben, HTML im Klartext zu schreiben. Ich bin an HAML gewöhnt, daher habe ich versucht, hamlish-jinja zu verwenden, mit dem Sie HAML-ähnliche Ansichtsvorlagen in Flask schreiben können.
$ 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
Greifen Sie jetzt in Ihrem Webbrowser auf localhost: 5000
zu. Sie sollten "Hallo Welt!" Sehen.
Flask scheint Vorlagen standardmäßig in einem Verzeichnis mit dem Namen "Vorlagen" abzulegen.
Wie der Name schon sagt, ist Hamlish "HAML-like", nicht HAML selbst. Dieser Artikel war hilfreich, um den Unterschied zu erkennen.
Selbst im obigen Beispiel sollte es in HAML "% meta {charset:" utf-8 "}" sein, in Hamlish jedoch "% meta charset =" utf-8 "".
app.jinja_env.hamlish_mode = 'indented'
app.jinja_env.hamlish_enable_div_shortcut = True
Festlegen von Optionen für Hamlish. Weitere Informationen zu den verfügbaren Optionen finden Sie unter hamlish-jinja head family.
Ich fand Flask sehr kompakt und gut. Darüber hinaus scheint Hamlish Ihre Website unterhaltsam und knackig zu gestalten.
Verwenden Sie das Webanwendungsframework Flask Ich habe viel gelernt. Lesen Sie dies einfach und Sie können mit dem Aufbau einer kleinen Website beginnen.
Ich vergesse es immer. Damit wird sichergestellt, dass Änderungen an der Ansichtsdatei wirksam werden, ohne den Server neu zu starten
$ FLASK_DEBUG=1 python app.py
Und.
Recommended Posts