Django 开发中的最佳实践之一
本文关注 Django 开发中调试的部分。
出自 Flask 项目旗下的 Werkzeug debugger
Werkzeug 这个词在德语里好像是工具的意思,这里有简要的介绍。和 Django runserver 提供的 50x 页面相比,最大的好处是在堆栈的每一层都可以打开 Python console。
选择下面列出的两种方法之一即可在你的 Django 项目中享受 werkzeug 带来的好处:
- https://github.com/philippbosch/django-werkzeug-debugger-runserver
- https://github.com/django-extensions/django-extensions/
其实第一个方法就是从第二个大杂烩般的 Django Extensions 中单独摘取 werkzeug 出来。
如何设断点进行单步调试呢
通常调试命令行界面的 Python 程序,用 pdb 或者 ipdb 即可。如何在 Django 项目中使用呢?Django PDB 项目提供这样的集成。在 URL 的参数中加上一个 pdb(比如 http://localhost:8000/test?pdb)就会在对应的 view 的入口点设置断点。当代码执行到此断点时,在你运行 runserver 的终端窗口里就会进入 pdb。相对应的,使用 ipdb 参数将使用 ipdb。也可以设置断点在每个 view 的入口点,或者单元测试出错或者失败时、或者是 view 中出现异常时。具体用法请参考项目的官方文档。
Django Debug Toolbar
介绍的文章可以看这篇。项目的 github 地址是:
https://github.com/django-debug-toolbar/django-debug-toolbar
Django Debug Toolbar 本身提供了良好的扩展机制。一些扩展是:
作者:czhang
原文链接:http://czhang.writings.io/articles/1
来源:oschina
链接:https://my.oschina.net/u/555649/blog/126700