Débogage des applications Flask : dévoiler les secrets
Lors du traitement des erreurs dans Flask, s'appuyer uniquement sur des instructions d'impression ou des messages flash peut ne pas suffire fournissant des informations complètes. Flask propose une solution puissante : le mode débogage.
Activation du mode débogage
Pour exploiter les capacités de débogage de Flask, appelez la commande flask avec --app et -- options de débogage. Par exemple :
$ flask --app example --debug run
Alternativement, avant la version 2.2 de Flask, vous pouvez définir la variable d'environnement FLASK_ENV sur « développement » ou utiliser FLASK_APP et FLASK_DEBUG=1.
Pour Mac, Linux, et les sous-systèmes Windows, définissez ces variables d'environnement en conséquence :
$ export FLASK_APP=example $ export FLASK_DEBUG=1 $ flask run
Si vous utilisez Windows CMD, utilisez set au lieu d'export :
set FLASK_DEBUG=1
Les utilisateurs PowerShell doivent exploiter $env :
$env:FLASK_DEBUG = "1"
Lors de l'utilisation de la méthode app.run(), l'activation du mode débogage implique de transmettre debug= Vrai.
Inspection des traces
Quel que soit le mode de développement statut, les traces sont toujours imprimées sur le terminal exploitant le serveur.
Exploiter les débogueurs IDE
PyCharm, VS Code et d'autres IDE permettent aux développeurs de parcourir le code en utilisant points d'arrêt. Configurez la configuration d'exécution pour référencer un script appelant app.run(debug=True, use_reloader=False) ou le script venv/bin/flask. Bien que la désactivation du rechargement soit facultative, le rechargement met fin au contexte de débogage, nécessitant la définition d'un autre point d'arrêt.
Incorporation des débogueurs de terminal
Incorporation des débogueurs de terminal comme pdb, pudb ou d'autres sont possibles en appelant set_trace dans la vue désignée pour débogage.
Éviter les blocs exceptés trop larges
L'emploi de blocs exceptés trop larges peut masquer l'erreur en cours de débogage. Flask gère les exceptions, affichant soit le débogueur, soit une erreur 500 lors de l'impression du traçage sur la console. Cela élimine le besoin d'essayer fourre-tout... sauf... les constructions.
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!