Maison > développement back-end > Tutoriel Python > Comment puis-je transmettre des variables entre les pages dans une application Flask ?

Comment puis-je transmettre des variables entre les pages dans une application Flask ?

Susan Sarandon
Libérer: 2024-12-08 03:00:11
original
358 Les gens l'ont consulté

How Can I Pass Variables Between Pages in a Flask Application?

Transmission de variables entre les pages Flask

Dans Flask, la transmission de variables entre les pages peut être réalisée via diverses méthodes, notamment les sessions, les paramètres de requête et voir args.

Sessions

Les sessions offrent un moyen simple de stocker les valeurs Python pour une récupération ultérieure. Ils se comportent comme un dictionnaire persistant qui survit à plusieurs requêtes. Pour utiliser des sessions, il suffit d'attribuer une variable au dictionnaire 'session' :

@app.route('/a')
def a():
    session['my_var'] = 'my_value'
    return redirect(url_for('b'))
Copier après la connexion

Dans la page suivante, la valeur est accessible comme suit :

@app.route('/b')
def b():
    my_var = session.get('my_var', None)
    return my_var
Copier après la connexion

Requête Paramètres

Les paramètres de requête vous permettent de transmettre les données d'une URL de modèle directement au gestionnaire de page. Ceci est utile pour transmettre de petites quantités de données qui n'ont pas besoin d'être conservées pour les demandes ultérieures. Pour utiliser des paramètres de requête, ajoutez le nom et la valeur du paramètre à l'URL dans le modèle :

<a href="{{ url_for('b', my_var='my_value') }}">Send my_value</a>
Copier après la connexion

Cela produira une URL telle que /b?my_var=my_value, accessible dans le gestionnaire de page comme suit :

@app.route('/b')
def b():
    my_var = request.args.get('my_var', None)
Copier après la connexion

View Args

View Args fournit un moyen de transmettre des données depuis l'URL directement dans la fonction d'affichage. Ceci est similaire aux paramètres de requête, mais les données ne sont pas exposées dans l'URL. Pour utiliser les arguments de vue, annotez la fonction route avec les types d'arguments attendus :

@app.route('/b/<my_var>')
def b(my_var):
    # Use 'my_var' in your view function
Copier après la connexion

Notez que les arguments de vue ne peuvent pas être utilisés pour transmettre des données arbitraires, car ils sont annotés par type.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal