Django之django-debug-toolbar使用詳解


簡介
       Django Debug Toolbar是Django開發中必備利器,可以幫助開發者快速了解項目的整體信息以及每個頁面包括sql信息,http相關信息。本篇將詳細講解如何django-debug-toolbar的使用。

項目集成Django Debug Toolba
       我們去Django Debug Toolba官網,跟隨官方文檔一起學習
       https://django-debug-toolbar.readthedocs.io/en/latest/

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就可以了
如下我的配置:

配置完成,界面顯示django-debug-toolbar面板
現在,運行羡慕,我們Django Debug Toolbar界面就會出現了

我們網頁的右上角就會出現一個DjDt的圖標,點擊展開

右邊則為頁面的信息,比如我們點開versions,就是Django的版本和相關信息

django-debug-toolbar面板介紹
Versions :代表是哪個django版本
Timer : 用來計時的,判斷加載當前頁面總共花的時間
Settings : 讀取django中的配置信息
Headers : 當前請求頭和響應頭信息
Request: 當前請求的想信息(視圖函數,Cookie信息,Session信息等)
SQL:查看當前界面執行的SQL語句
StaticFiles:當前界面加載的靜態文件
Templates:當前界面用的模板
Cache:緩存信息
Signals:信號
Logging:當前界面日志信息
Redirects:當前界面的重定向信息


自定義自己的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',
]

比如我只需要TimerPanel、RequestPanel、HeadersPanel、SQLPanel這四個面板;我們就可以配置: 

配置好后,重新運行我們的項目,則只顯示這個4個面板:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM