Bri*_*ach 9 python ide debugging web-development-server flask
我输入的打印语句多于代码.这太痛苦了.
如果通过下面调用烧瓶开发服务器,我可以使用PyCharm调试器
from ersapp import app
if __name__ == '__main__':
app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)
我在Miguel Grinberg的书中遵循了这个例子,并使用了一个应用程序管理器(flask-script).我在我的应用程序目录中调用服务器,如下所示
(env)$ python manage.py runserver
Run Code Online (Sandbox Code Playgroud)
并在 appdirectory/__init__.py
def create_app(config_name):
webapp = Flask(__name__)
...
return webapp
Run Code Online (Sandbox Code Playgroud)
Pycharm中的调试器会让事情变得更容易,因为那是我工作的地方.
如果您使用应用程序工厂模式(即使用 creat_app() 而不使用 run.app() main),您可以使用标准“flask”运行配置模板(社区版本可能没有这些,不确定)。但是,您会注意到调试器不会在断点处停止,因为 DEBUG 中的 Flask 应用程序运行重新加载器,这意味着它在不同的线程中运行,而 Pycharm 无法捕获它。因此,为了让它不仅在午餐时中断,而且在您想要调试的任何 API 调用上都中断,请确保:
这是我获得完整调试支持的唯一方法:
您通过 CLI 手动运行该项目。要使用 PyCharm IDE 调试,您必须为您的项目配置 PyCharm,然后通过 PyCharm 运行它。
但如果您想在没有 PyCharm 的情况下运行程序,则可以使用pdb库作为调试目标。尝试下面的代码:
import pdb
def my_def():
try:
x = 7 / 0
except Execption as e:
pdb.set_trace()
Run Code Online (Sandbox Code Playgroud)
运行此程序时,您可以在 CLI 上看到交互行...
| 归档时间: |
|
| 查看次数: |
9928 次 |
| 最近记录: |