Condivisione della tecnologia

[Note su Flask] Un programma Flask completo

2024-07-12

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

Come accennato in precedenza, Flask è un framework di sviluppo web leggero. Perché si dice che sia leggero? Perché può essere eseguito con poche righe di codice. Diamo un'occhiata al framework Flask più semplice.

Installa Flask

Prima di esaminare il framework Flask, dobbiamo prima installare il modulo flask Chiunque abbia studiato Python deve sapere che l'installazione del modulo flask è in realtà molto semplice. Basta usare il comando

pip install flask
  • 1

Puoi installarlo. Una cosa da menzionare qui è che se riscontri un errore di download durante l'installazione di un modulo, è principalmente perché Python utilizza l'indirizzo ufficiale del modulo di download per impostazione predefinita e questo indirizzo a volte è instabile quando si accede in Cina si consiglia di utilizzare la fonte di download di Tsinghua per il download, che può essere molto più veloce e non causerà errori o timeout.

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

Anche il metodo di utilizzo è molto semplice. Esistono due metodi. Il primo è aggiungere a-iParametri, seguiti dall'URL, il modulo verrà scaricato da questo indirizzo, come segue

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

Il metodo sopra descritto può essere utilizzato solo per download temporanei e non può modificare in modo permanente l'origine del download. Ecco un altro metodo per modificare l'origine del download predefinita.

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

Dopo il cambio puoi passarepip config listControlla se la modifica ha avuto successo. Se la modifica ha avuto successo, verrà visualizzato come segue

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

Un programma Flask minimale e completo

Dopo che Flask è stato installato con successo, possiamo guardare un esempio. Questo è un programma completo e una piccola unità necessaria per l'esecuzione di Flask. Salviamo il codice seguente in un file py, come 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

Come mostrato nel codice precedente, solo 10 righe di codice possono far funzionare flask, quindi flask è un framework web leggero.Sebbene il codice riportato sopra sia breve, è completo e contiene tutto il necessario per eseguire Flask. L'istanza dell'applicazione, le funzioni di routing e di visualizzazione costituiscono il programma Flask più semplice.

Applicazioni

L'istanza dell'applicazione è in realtà l'oggetto dell'applicazione di Flask. L'oggetto menzionato qui non è la tua ragazza, ma un nucleo dell'applicazione Web che può includere l'elaborazione delle richieste, la distribuzione del percorso e la chiamata della funzione di visualizzazione, ovvero quella frase.app = Flask(__name__), se guardiamo il codice sorgente dell'esempio Flask, possiamo scoprire che contiene molti contenuti, come l'esecuzione di parametri di avvio, regole di routing, definizioni su come inviare e ricevere richieste, ecc., che non verranno discussi in dettaglio qui.

instradamento

Il routing viene utilizzato per gestire la corrispondenza tra URL e funzioni.Qui dobbiamo parlare dell'intero principio di funzionamento del web per facilitare la comprensione. Per prima cosa, guarda l'immagine qui sotto
Inserisci qui la descrizione dell'immagine
Il browser Web avvia una richiesta, il server Web riceve la richiesta e invia la richiesta all'applicazione Flask Dopo che l'applicazione Flask ha ricevuto l'URL richiesto, trova la funzione di elaborazione corrispondente. Ecco come funziona l'intero routing.
Il programma corrispondente a quanto sopra è quella funzione

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

Se impari Python in modo relativamente approfondito, sarai in grado di conoscere il codice sopra@app.route('/')è un decoratore utilizzato per registrare le funzioni di visualizzazione e il contenuto tra parentesi è il percorso da utilizzare.'/'Significa il percorso radice, cioèhttp://127.0.0.1:5000;Se cambiato in‘/login/’Significa usare il percorso di login, cioèhttp://127.0.0.1:5000/login/; se scritto come'/user/<name>'Diventa il routing delle variabili dinamiche, ovvero il<name>Cambierà dinamicamente in base al contenuto trasmesso, come ad esempiohttp://127.0.0.1:5000/user/jay, questo Jay deve essere collegato al percorso dal browser.
Ciò è semplificato in Flask per facilità d'uso, infatti, il modo tradizionale di definire i percorsi non utilizza i decoratori Poiché il modo tradizionale non è più comunemente utilizzato, non entrerò nei dettagli qui.
C'è un altro punto che deve essere menzionato qui riguardo al routing, ovvero il routing delle variabili dinamiche di Flask supporta solo i tipi string, int, float e path, come sopra<name> Per impostazione predefinita non è necessario scrivere questo tipo di stringa. Può corrispondere a qualsiasi sequenza di caratteri tranne le barre (/).Per gli altri tipi, se è necessario identificarli, è necessario scrivere il tipo, ad esempio'/path/<path:my_path>'

visualizza la funzione

La funzione di visualizzazione è la funzione che gestisce le richieste in entrata, ovvero la funzione definita nel routing.

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

La funzione di cui sopra è la cosiddetta funzione di visualizzazione. Viene utilizzato per elaborare le richieste in arrivo e restituire le risposte.

risposta

La risposta di ritorno è menzionata sopra, ma qual è la risposta? La risposta è il valore restituito nella funzione view, che può essere una stringa o una forma complessa. È inoltre possibile utilizzare la funzione render_template() fornita da Flask per restituire un file html. Allo stesso tempo, la risposta può anche utilizzare direttamente il file funzione reindirizzare() per reindirizzare il percorso.

avviare

Le cinque parti interne del programma Flask sono riepilogate sopra, ma c'è ancora un punto di ingresso in meno per l'esecuzione di Flask, ovvero le ultime due righe di questo codice.

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

prima rigaif __name__ == '__main__':, chiunque abbia studiato Python sa che questo è il metodo di ingresso di Python, ovvero il file o modulo corrente viene eseguito direttamente come programma principale.
seconda lineaapp.run(debug=True)Serve per chiamare l'oggetto Flask creato sopra ed eseguire la funzione run() per consentire l'esecuzione di Flask, e debug viene passato come parametro alla funzione run() per far sapere a Flask che è avviato in modalità debug, Flask caricherà automaticamente il ricaricatore e il debugger.
Quindi andiamo alla riga di comando, entriamo nella directory del file my_flask.py ed entriamo nella riga di comandopython my_flask.pyÈ possibile avviare il programma, come mostrato nella figura seguente.
Inserisci qui la descrizione dell'immagine
Apriamo il browser ed entriamohttp://127.0.0.1:5000Puoi vedere Hello, World!, come mostrato di seguito
Inserisci qui la descrizione dell'immagine

A questo punto abbiamo finito di spiegare i concetti che dovrebbe avere il nostro programma Flask completo. Naturalmente, questi sono i contenuti più elementari Se vuoi sviluppare completamente un'applicazione web basata su Flask, c'è ancora molto da imparare, ad esempio come modelli e database, tecnologia front-end, ecc., l'autore scrive anche mentre apprende e attinge anche al metodo di apprendimento Feynman per ricordarlo con maggiore fermezza. Se ci sono omissioni o errori nel processo di scrittura, per favore evidenziare.