Das GrundgerĂĽst einer Seite in Flask

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Flask ist ein Python Framework, dass es einem erlaubt Webseiten in Python zu erstellen.
    Zu Anfang: Es gibt zwei Arten eine Seite in Flask zu erstellen. Ich beschreibe hier die aufwendigere, die allerdings bei größeren Seiten deutlich übersichtlicher ist.

    Wichtig zu wissen ist, dass wir Flask nur auf einem eigenständigem Server verwenden können, nicht auf angemietetem Webspace. Flask benötigt kein Apache und PHP. Es ist jedoch möglich das ganze mit MySQL und SQLite zu verbinden, auf das ich allerdings hier nicht genauer eingehen werde.


    Zu erst müssen wir sichergehen, dass Python auf dem Server installiert ist. Bei einem Linux-Server ist dies standartmäßig der Fall. Nun müssen wir ein Tool zum Installieren von Python Erweiterungen installieren, so wie Flask.
    Dazu geben wir als Root folgendes ein:

    Quellcode

    1. apt-get install python-pip
    2. pip install Flask






    Nun können wir mit der Erstellung der eigentlichen Seite beginnen.

    Wir brauchen fĂĽr das ganze eine bestimmte Ordnerstruktur:

    Quellcode

    1. |-> runserver.py
    2. |-> name_unserer_seite/
    3. |-> __init__.py
    4. |-> somename.py
    5. |-> templates/
    6. |-> sometemplate.html
    7. |-> static/
    8. | -> style.css
    9. | -> images/
    10. |-> someimage.png
    Jetzt füllen wir die Seiten mit unserem Code (Bedenke: Alles hinter # ist in Python ein Zitat und dient hier der Erklärung)
    runserver.py:

    Python-Quellcode: runserver.py

    1. from name_unserer_seite import app #Get Sites from __init__.py
    2. app.run(host='0.0.0.0', port=80, debug=True) #Run Server on IP 0.0.0.0 with port 80 debug enabled
    __init__.py:

    Python-Quellcode: __init__.py

    1. # coding: utf8
    2. from flask import Flask #Import Flask module
    3. app = Flask(__name__) #Important Variable which Flask is using
    4. import name_unserer_seite.somename #Angabe vom Ordner.Datei ohne.py am Ende (fĂĽr jede Seite hier anzugeben)
    somename.py:

    Python-Quellcode: somename.py

    1. from sslcon import app #import app from __init__.py
    2. from flask import render_template #import modules (here render_template) from flask
    3. @app.route('/') #Pfad der Webseite / steht fĂĽr den Root Pfad wenn die Webseite via 127.0.0.1/test aufgerufen werden soll einfach ('/test') schreiben
    4. def somename():
    5. templateData = {
    6. 'title': "Seitentitel",
    7. 'text': "Text fĂĽr die Webseite" #Diese Liste kann so bis in die Unendlichkeit gefĂĽhrt werden
    8. }
    9. return render_template('sometemplate.html', **templateData) #Gebe die Variablen an unsere Templatedatei weiter
    sometemplate.html:

    HTML-Quellcode: sometemplate.html

    1. <!-- Das ist jetzt ein ganz normales HTML Template -->
    2. <head>
    3. <title>{{ title }}</title> <!-- {{}} kommt von Jinja und fĂĽgt hier die als title festgelegte Variable ein -->
    4. </head>
    5. <body>
    6. {{ text }} <!-- Hier das ganze mit dem Text -->
    7. </body>



    So, ich denke für den Anfang sollte das genug sein. Wenn Bedarf herrscht, kann ich gerne den weiteren Umgang beschreiben, denn mit Flask (und Jinja(ist in Flask inbegriffen)) lässt sich viel machen. Wir können z.B. auch Daten via JSON weitergeben, oder das ganze mit einer SQLite, MySQL, etc. Datenbank verbinden.

    Da dieses jetzt aber den Rahmen hier deutlich sprengen wĂĽrde, warte ich auf eure RĂĽckmeldungen und werde mich dann nach euren WĂĽnschen richten.

    956 mal gelesen