Django 开发中的最佳实践之一

Django 开发中的最佳实践之一

本文关注 Django 开发中调试的部分。

出自 Flask 项目旗下的 Werkzeug debugger

Werkzeug 这个词在德语里好像是工具的意思,这里有简要的介绍。和 Django runserver 提供的 50x 页面相比,最大的好处是在堆栈的每一层都可以打开 Python console。

Django 开发中的最佳实践之一_第1张图片


选择下面列出的两种方法之一即可在你的 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 开发中的最佳实践之一_第2张图片

Django Debug Toolbar 本身提供了良好的扩展机制。一些扩展是:

  • http://blog.klymyshyn.com/2011/05/two-useful-enhancements-for-django.html


作者:czhang

原文链接:http://czhang.writings.io/articles/1

你可能感兴趣的:(python,django,工具,调试,最佳实践)