调试 Flask 应用程序:揭开秘密
处理 Flask 中的错误时,仅依靠 print 语句或 flash 消息可能会不够提供全面的见解。 Flask 提供了一个有效的解决方案:调试模式。
启用调试模式
要利用 Flask 的调试功能,请使用 --app 和 -- 调用 Flask 命令调试选项。例如:
$ flask --app example --debug run
或者,在 Flask 版本 2.2 之前,您可以将 FLASK_ENV 环境变量设置为“development”或使用 FLASK_APP 和 FLASK_DEBUG=1。
对于 Mac、Linux,和 Windows 子系统,相应地设置这些环境变量:
$ export FLASK_APP=example $ export FLASK_DEBUG=1 $ flask run
如果使用 Windows CMD,使用 set 而不是导出:
set FLASK_DEBUG=1
PowerShell 用户应该利用 $env:
$env:FLASK_DEBUG = "1"
当使用 app.run() 方法时,启用调试模式需要传递debug=True.
检查回溯
无论开发模式状态如何,回溯总是打印到操作服务器的终端。
利用 IDE 调试器
PyCharm 、VS Code 和其他 IDE 使开发人员能够利用断点单步执行代码。配置运行配置以引用调用 app.run(debug=True, use_reloader=False) 的脚本或 venv/bin/flask 脚本。虽然禁用重新加载器是可选的,但重新加载会终止调试上下文,需要设置另一个断点。
合并终端调试器
合并终端调试器,如 pdb、pudb 或其他的可以通过在指定的视图中调用 set_trace 来实现调试。
避免过于宽泛的 except 块
使用过于宽泛的 except 块可能会掩盖正在调试的错误。 Flask 处理异常,在将回溯打印到控制台时显示调试器或 500 错误。这消除了对包罗万象的 try... except... 构造的需要。
以上是如何有效地调试 Flask 应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!