使调试更加方便
接下来, 介绍一下使用Django开发应用程序中, 使调试工作更为便捷的Django Debug Toolbar 工具。
Django Debug ToolBar
使用Django开发时, 常常会有这样的疑问: “要显示某个页面, 需要执行怎样的SQL?” 这时, 如果使用了Django Debug Toolbar, 在开发Web页面的同时, 就能够确认SQL在开发、 执行与处理时所花费的时间。
Note
https://github.com/django-debug-toolbar/django-debug-toolbar
使用Django Debug Toolbar不仅可以在开发时确认SQL的相关信息, 而且还能确认其他各类信息, 摘要如下:
版本 | Django的版本, 得到在当前视图中所使用的模块版本信息 |
请求时间 | 显示View所需的时间 |
设置 | 确认Django配置文settings.py中所配置的数值信息 |
HTTP头信息 | 服务器发出的HTTP响应信息 |
请求变量 | GET/POST/Cookie/session的变量信息,
以及视图对它进行变更后的信息 |
SQL | 可以确认View开发的SQL语句 |
静态文件 | 显示静态文件的路径及及包含静态文件的应用 |
模板 | 可确认当前视图使用的模板(包含继续关系)与Context processer信息 |
缓存 | 显示缓存的调用 |
信号 | Django内置的信号信息 |
日志 | 被记录的日志信息 |
拦截重定向 | |
| |
1. 安装django-debug-toolbar
$ sudo pip install django-debug-toolbar
2. 升级django-debug-toolbar
$ sudo pip install -U django-debug-toolbar
3. 配置settings.py
django-debug-toolbar安装完毕后, 在settings.py文件中添加下面的内容。
向INSTALLED_APPS添加的内容
INSTALLED_APPS = (
...
...
'debug_toolbar', # 追加
)
向MIDDLEWARE_CLASSEDI添加
MIDDLEWARE_CLASSES = (
...
...
'debug_toolbar.middleware.DebugToolbarMiddleware', # 追加
)
在显示debug Toolbar时, 可以配置页面显示的位置, 其中, 如果INTERNAL_IPS没有设置的话, 则Toolbar也无法显示。以本地主机为开发环境, 将该值设置为127.0.0.1.
则在浏览器打开的URL为 http://127.0.0.1:8000/ 或 http://localhost:8000/。 假设将该值设置为192.168.2.47,则相应在浏览器打开的URL为http://192.168.2.47:8000/
添加INTERNAL_IPS信息
INTERNAL_IPS = ('127.0.0.1',)
注意ip地址后面有一个逗号, 表示这是一个tuple变量(元组变量)
确保在INSTALLED_APPS里存在'django.contrib.staticfiles'
确保在INSTALLED_APPS里设置了STATIC_URL
4. Debug Toolbar运行的确认
完成settings.py的配置后, 重启Django时, 在浏览器上会显示如下面的Debug Toolbar
不需要Debug Toolbar时, 只需点击右上解的Hide按钮, 即可隐藏整个工具条。
OK, Enjoy it!!!