跳转到主要内容

django调试工具

项目描述

dj.debug

为Django应用提供简单的调试工具,以辅助测试驱动开发。

Build Status Test Coverage

安装

$ pip install dj.debug

开发安装

$ pip install -e git+git@github.com:translate/dj.debug#egg=dj.debug
$ pip install dj.debug[test]

初始化内置对象

这些工具可以直接导入,但更好的方式是使用内置的_trace功能。

要激活此功能,请在您的代码中调用以下内容 - 例如在测试设置中

>>> from dj.debug import trace_debug

>>> trace_debug()

完成此操作后,您将在环境中的任何地方都有可用的_trace对象。

>>> _trace
<dj.debug.builtin.Trace object at ...>

您可以指定内置对象的名称

>>> trace_debug("_t")
>>> _t
<dj.debug.builtin.Trace object at ...>

使用内置对象的优势在于,如果您意外地将它留在代码中,它不会被代码检查器识别。

用法 - pdb

_t对象提供了对pdb的快速访问

>>> _t.pdb.set_trace()
--Return--
> <stdin>(1)<module>()->None
(Pdb)

用法 - 跟踪调试

如果您想要调试的代码在您想要调试的点之前被多次执行,您可以使用_t对象的调试标志

>>> def commonly_hit_code(*args, **kwargs):
...     if _t.debug: _t.pdb.set_trace()

>>> def some_other_code(*args, **kwargs):
...     # we only want to debug after this point
...     _t.debug = True
...     something_which_triggers_commonly_hit_code()

用法 - SQL调试

这个工具对于在Django中查找性能不佳的代码非常有用。通过跟踪代码块中运行的SQL,您可以找到并修复触发过多查询、过于复杂、结果过大等查询集。您还可以使用Django的dbshell输出的结果来分析、改进并适当添加索引。

>>> with _t.debug_sql():
...     trigger_some_orm_action()

dj.debug用法

dj.debug.debug_sql

…待补充…

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

dj.debug-0.0.2.tar.gz (5.8 kB 查看哈希值)

上传时间 源代码

由支持