Python TagebuchPython lernen – mein persönliches Tagebuch

Tagebuch-Eintrag #60
Flask – Statische Dateien einbinden

Was wäre eine HTML-Seite ohne CSS? Es wäre langweilig. Deswegen lerne ich, wie ich statische Dateien in Flask einbinden kann.
Werbung/Anzeige

CSS und JavaScript laufen eigentlich auf allen Webseite mit, damit die Webseite schön aussieht. Meine einfach hat noch keine Formatierung und co. Das muss ich ändern und jetzt binde ich CSS ein.

Bei Flask ist es so, das solche statische Dateien, wie CSS und JS in einem von Flask vorgesehenen Ordner liegen muss. Dieser Ordner heißt static im Projektordner. Die Flask-Dokumentation für diesen Abschnitt ist relativ kurz gehalten – naja, viel gibt es auch nicht wirklich zu erklären 😉

Stylesheet-Datei (CSS) einbinden

Also, wie in der Flask-Dokumentation beschrieben, muss ich im Projektordner das Verzeichnis static erstellen und darin erstelle ich einfach meine style.css-Datei.

Danach wird die CSS-Datei über url_for(’static‘, filename=’style.css‘) geladen. Leider steht das nirgends, wo diese Code-Zeile eingegeben werden soll. Also versuche ich es über einen print-Befehl es auszugeben und schaue mal, was es dann ausgibt.

Aber ja, hätte ich die Flask-Dokumentation der Reihe nach abgearbeitet, wüsste ich, dass ich dafür noch ein Modul benötigt. Das url_for Modul. Denn ohne dieses Modul, kennt Python/Flask diese Variable nicht.

url_for unbeannte Funktion
url_for unbeannte Funktion

Habe ich dann url_for importiert und lade sie Seite neu, sehe ich im Terminal, was es ausgibt: /static/style.css

url_for Ausgabe
url_for Ausgabe

Wenn ich die URL dann im Browser eingebe, sehe ich korrekterweise den Inhalt der style.css-Datei.

Flask - style.css
Flask – style.css

CSS-Datei in HTML-Template-Datei laden

Nach dem ich nur was die Ausgabe von url_for(’static‘, filename=’style.css‘) ist, muss ich es nur noch in die Template-Datei einbinden. Hierfür gebe ich es nach der Jinja-Template-Engine-Vorgabe ein.

{{ url_for('static', filename='style.css') }}

Und in der Tat funktioniert es 🙂

Flask - style.css laden im HTML-Code
Flask – style.css laden im HTML-Code Zeile 15

Ich habe dann die H1-Überschrift die Farbe Orange definiert und Schriftstil als kursiv. Funktioniert wunderbar! 🙂

Ich habe nun HTML-Template und CSS-Datei. Eine gute Grundlage für weitere Funktionen mit und über Flask auszugeben.

Mal schauen, welches Thema ich als nächstes angehen werde.

Bis bald!

# # ## ENDE Tagebuch-Eintrag #60 | Flask – Statische Dateien einbinden
Werbung/Anzeige
Schlagwörter im Tagebuch-Eintrag:

Kommentar schreiben




Werbung/Anzeige