【Django杂记】django-debug-toolbar的用法

简介

  • Django Debug Toolbar是Django开发中必备利器,可以帮助开发者快速了解项目的整体信息以及每个页面包括sql信息,http相关信息。

1、安装

这里写图片描述
  • 如图,使用pip命令直接安装即可;(注意:一般我们会用virtualenvwrapper创建虚拟开发环境,那么切记一定要先是workon命令切换到当前的开发环境再安装。)
pip install django-debug-toolbar

2、把debug_toolbar添加到INSTALLED_APPS

这里写图片描述
  • 注意:如上图官方文档说的,一定要把debug_toolbar放在django.contrib.staticfiles下。当然不要理解为紧跟着django.contrib.staticfiles后面,只要在后面即可。
这里写图片描述

3、urls中配置

这里写图片描述
  • 如上图所示,在项目url中配置path中,地址为__debug__/,视图为include(debug_toolbar.urls),完整的配置为:
这里写图片描述

4、Middleware中间件的配置

这里写图片描述
  • 在settings中MIDDLEWARE配置'debug_toolbar.middleware.DebugToolbarMiddleware',我们要把django-debug-toolbar这个中间件尽可能配置到最前面,但是,必须要放在处理编码或相应内容的中间件后面,比如我们要是使用了GZipMiddleware,就要把DebugToolbarMiddleware放在GZipMiddleware后面。如下图,我没有使用到处理编码和响应内容的中间件,所以直接放在了最前面。
这里写图片描述

5、配置IP地址

这里写图片描述
  • 我们需要在settings.py文件中配置INTERNAL_IPS,只有访问这里面配置的IP地址时,Debug Toolbar才是展示出来。因为我们一般都是本地开发,所以直接配置为127.0.0.1就可以了。如下配置:
这里写图片描述

6、配置完成,界面显示django-debug-toolbar面板

  • 现在,运行项目,我们Django Debug Toolbar界面就会出现了
这里写图片描述

  • 我们网页的右上角就会出现一个DjDT的图标,点击展开。
这里写图片描述
  • 右边则为页面的信息,比如我们点开versions,就是Django的版本和相关信息。
这里写图片描述

7、django-debug-toolbar面板介绍

  • Versions:代表是哪个django版本
  • Timer:用来计时的,判断加载当前页面总共花的时间
  • Settings:读取django中的配置信息
  • Headers:当前请求头和响应头信息
  • Request:当前请求项的信息(视图函数、Cookie信息、Session信息等)
  • SQL:查看当前页面执行的SQL语句
  • StaticFiles:当前页面加载的静态文件
  • Templates:当前界面用的模板
  • Cache:缓存信息
  • Signals:信号
  • Logging:当前界面日志信息
  • Redirects:当前界面的重定向信息

8、自定义自己的django-debug-toolbar右侧面板

  • 右侧面板太多,有些面板信息不需要,比如Versions django版本这个面板我们就不需要显示在这里,怎么处理呢?
这里写图片描述
  • 我们在settings.py去使用DEBUG_TOOLBAR_PANELS配置我们需要显示的面板即可。
DEBUG_TOOLBAR_PANELS = [
    # 代表是哪个django版本
    'debug_toolbar.panels.versions.VersionsPanel',
    # 用来计时的,判断加载当前页面总共花的时间
    'debug_toolbar.panels.timer.TimerPanel',
    # 读取django中的配置信息
    'debug_toolbar.panels.settings.SettingsPanel',
    # 看到当前请求头和响应头信息
    'debug_toolbar.panels.headers.HeadersPanel',
    # 当前请求的想信息(视图函数,Cookie信息,Session信息等)
    'debug_toolbar.panels.request.RequestPanel',
    # 查看SQL语句
    'debug_toolbar.panels.sql.SQLPanel',
    # 静态文件
    'debug_toolbar.panels.staticfiles.StaticFilesPanel',
    # 模板文件
    'debug_toolbar.panels.templates.TemplatesPanel',
    # 缓存
    'debug_toolbar.panels.cache.CachePanel',
    # 信号
    'debug_toolbar.panels.signals.SignalsPanel',
    # 日志
    'debug_toolbar.panels.logging.LoggingPanel',
    # 重定向
    'debug_toolbar.panels.redirects.RedirectsPanel',
]
  • 我只需要TimePanel、RequestPanel、HeadersPanel、SQLPanel这四个面板;我们可以配置:
这里写图片描述
  • 配置好后,重新运行我们的项目,则只显示这4个面板:
这里写图片描述
posted @ 2022-05-31 13:57  郭祺迦  阅读(422)  评论(0)    收藏  举报