在开发模式下运行应用程序将在出现错误时在浏览器中显示交互式回溯和控制台。要以开发模式运行,请设置
FLASK_ENV=development
环境变量,然后使用
flask run
命令(记住
FLASK_APP
你的应用程序)。
对于Linux、Mac、Linux Subsystem for Windows、Git Bash on Windows等:
export FLASK_APP=myapp
export FLASK_ENV=development
flask run
对于windows cmd,使用
set
而不是导出:
set FLASK_ENV=development
对于powershell,使用
$env
:
$env:FLASK_ENV = "development"
在烧瓶1.0之前,这是由
FLASK_DEBUG=1
而是环境变量。
如果你用的是
app.run()
方法而不是
烧瓶运行
命令,通过
debug=True
启用调试模式。
不管开发模式如何,回溯也会打印到运行服务器的终端。
如果使用的是pycharm、vs代码等,则可以利用其调试器使用断点逐步遍历代码。运行配置可以指向脚本调用
app.run(debug=True, use_reloader=False)
,或指向
venv/bin/flask
从命令行编写脚本并使用它。您可以让重新加载程序保持禁用状态,但重新加载将终止调试上下文,您必须再次捕获断点。
也可以通过调用
set_trace
在要开始调试的视图中。
除了积木,别用得太宽。用catch all包围所有代码
try... except...
将关闭要调试的错误。一般来说,这是不必要的,因为flask已经通过显示调试器或500个错误并将回溯打印到控制台来处理异常。