Technologieaustausch

[Flask-Notizen] Ein komplettes Flask-Programm

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Wie bereits erwähnt, ist Flask ein leichtes Webentwicklungs-Framework, weil es mit nur wenigen Codezeilen ausgeführt werden kann.

Flask installieren

Bevor wir uns das Flask-Framework ansehen, müssen wir zuerst das Flask-Modul installieren. Jeder, der Python studiert hat, muss wissen, dass die Installation des Flask-Moduls eigentlich sehr einfach ist

pip install flask
  • 1

Sie können es hier installieren. Wenn bei der Installation eines Moduls ein Download-Fehler auftritt, liegt dies hauptsächlich daran, dass Python standardmäßig die offizielle Download-Moduladresse verwendet und diese Adresse beim Zugriff in China manchmal instabil ist Es wird empfohlen, zum Herunterladen die Download-Quelle von Tsinghua zu verwenden. Dies kann viel schneller sein und verursacht keine Fehler oder Zeitüberschreitungen.

https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

Die Verwendungsmethode ist ebenfalls sehr einfach. Es gibt zwei Methoden. Die erste besteht darin, a hinzuzufügen-iParameter, gefolgt von der URL, das Modul wird wie folgt von dieser Adresse heruntergeladen

pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

Die obige Methode kann nur für temporäre Downloads verwendet werden und kann die Download-Quelle nicht dauerhaft ändern. Hier ist eine weitere Methode zum Ändern der Standard-Download-Quelle.

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

Nach der Änderung können Sie bestehenpip config listÜberprüfen Sie, ob die Änderung erfolgreich ist. Wenn die Änderung erfolgreich ist, wird sie wie folgt angezeigt

(.venv) ❯❯ pip config list
global.index-url='https://pypi.tuna.tsinghua.edu.cn/simple'
  • 1
  • 2

Ein minimales und vollständiges Flask-Programm

Nachdem Flask erfolgreich installiert wurde, können wir uns ein Beispiel ansehen. Dies ist ein vollständiges Flask-Programm und eine kleine Einheit, die für die Ausführung von Flask erforderlich ist. Wir speichern den folgenden Code in einer py-Datei, z. B. my_flask.py

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return "Hello, World!"

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Wie im obigen Code gezeigt, können flask mit nur 10 Codezeilen ausgeführt werden, sodass flask ein leichtes Web-Framework ist.Obwohl der obige Code kurz ist, ist er umfassend und enthält alles, was zum Ausführen von Flask erforderlich ist. Die Anwendungsinstanz-, Routing- und Ansichtsfunktionen bilden das einfachste Flask-Programm.

Anwendungen

Die Anwendungsinstanz ist eigentlich das Anwendungsobjekt von Flask. Das hier erwähnte Objekt ist nicht Ihre Freundin, sondern ein Webanwendungskern, der die Anforderungsverarbeitung, Routenverteilung und den Aufruf von Ansichtsfunktionen umfassen kannapp = Flask(__name__)Wenn wir uns den Quellcode des Flask-Beispiels ansehen, können wir feststellen, dass er viele Inhalte enthält, z. B. laufende Startparameter, Routing-Regeln, Definitionen zum Senden und Empfangen von Anforderungen usw., die nicht besprochen werden ausführlich hier.

Routenführung

Routing wird verwendet, um die Korrespondenz zwischen URLs und Funktionen zu verwalten.Hier müssen wir über das gesamte Funktionsprinzip des Webs sprechen, um das Verständnis zu erleichtern. Schauen Sie sich zunächst das Bild unten an
Fügen Sie hier eine Bildbeschreibung ein
Der Webbrowser initiiert eine Anfrage, der Webserver empfängt die Anfrage und sendet die Anfrage an die Flask-Anwendung. Nachdem die Flask-Anwendung die angeforderte URL erhalten hat, findet sie die entsprechende Verarbeitungsfunktion.
Das entsprechende Programm ist diese Funktion

@app.route('/')
def index():
    return "Hello, World!"
  • 1
  • 2
  • 3

Wenn Sie Python relativ gründlich lernen, können Sie den obigen Code kennen@app.route('/')ist ein Dekorator, der zum Registrieren von Ansichtsfunktionen verwendet wird, und der Inhalt in Klammern ist der zu verwendende Pfad.'/'Es bedeutet also den Root-Pfadhttp://127.0.0.1:5000;Wenn geändert in‘/login/’Das bedeutet, dass Sie den Anmeldepfad verwendenhttp://127.0.0.1:5000/login/; wenn geschrieben als'/user/<name>'Es wird zum dynamischen Variablen-Routing, das heißt<name>Es ändert sich dynamisch entsprechend dem übertragenen Inhalt, zhttp://127.0.0.1:5000/user/jay, dieser Jay muss vom Browser an die Route angehängt werden.
Dies ist in Flask aus Gründen der Benutzerfreundlichkeit vereinfacht. Da die traditionelle Methode zur Routendefinition nicht mehr häufig verwendet wird, werde ich hier nicht näher darauf eingehen.
Es gibt noch einen weiteren Punkt, der hier zum Routing erwähnt werden muss: Das dynamische Variablen-Routing von Flask unterstützt nur String-, Int-, Float- und Pfadtypen wie die oben genannten<name> Der String-Typ muss nicht standardmäßig geschrieben werden. Er kann mit jeder Zeichenfolge außer Schrägstrichen (/) übereinstimmen.Wenn Sie andere Typen identifizieren müssen, müssen Sie den Typ schreiben, z'/path/<path:my_path>'

Ansichtsfunktion

Die Ansichtsfunktion ist die Funktion, die eingehende Anforderungen verarbeitet. Dies ist die im Routing definierte Funktion.

def index():
    return "Hello, World!"
  • 1
  • 2

Die obige Funktion ist die sogenannte Ansichtsfunktion. Es dient der Verarbeitung eingehender Anfragen und der Rückantworten.

Antwort

Die Rückantwort wurde oben erwähnt, aber wie lautet die Antwort? Die Antwort ist der in der Ansichtsfunktion zurückgegebene Wert, der eine Zeichenfolge oder eine komplexe Form sein kann. Sie können auch die von Flask bereitgestellte Funktion render_template () verwenden, um einen HTML-Code zurückzugeben Redirect()-Funktion zum Umleiten der Route.

Start-up

Die fünf internen Teile des Flask-Programms sind oben zusammengefasst, es gibt jedoch immer noch einen Einstiegspunkt weniger für die Ausführung von Flask, nämlich die letzten beiden Zeilen dieses Codes.

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2

erste Reiheif __name__ == '__main__':Jeder, der Python studiert hat, weiß, dass dies die Eingabemethode von Python ist, dh die aktuelle Datei oder das aktuelle Modul wird direkt als Hauptprogramm ausgeführt.
zweite Reiheapp.run(debug=True)Es besteht darin, das oben erstellte Flask-Objekt aufzurufen und die Funktion run () auszuführen, um Flask auszuführen. Debug wird als Parameter an die Funktion run () übergeben, um Flask darüber zu informieren, dass es im Debugging-Modus gestartet wird lädt automatisch den Reloader und den Debugger.
Dann gehen wir zur Befehlszeile, geben das Verzeichnis der Datei my_flask.py ein und geben es in die Befehlszeile einpython my_flask.pySie können das Programm starten, wie in der Abbildung unten gezeigt.
Fügen Sie hier eine Bildbeschreibung ein
Wir öffnen den Browser und geben einhttp://127.0.0.1:5000Sie können Hello, World! sehen, wie unten gezeigt
Fügen Sie hier eine Bildbeschreibung ein

An dieser Stelle haben wir die Konzepte erklärt, die unser komplettes Flask-Programm haben sollte. Natürlich sind dies die grundlegendsten Inhalte. Wenn Sie eine Webanwendung vollständig auf Basis von Flask entwickeln möchten, gibt es noch viel zu lernen B. Vorlagen und Datenbanken usw., der Autor schreibt auch während des Lernens und greift auch auf die Feynman-Lernmethode zurück, um mich besser daran zu erinnern, ob es beim Schreiben Auslassungen oder Fehler gibt kenntlich machen.