1-Djando - django-debug-toolbar的使用
about
python3.6.6 + django3.1.4 + django-debug-toolbar3.2
Django项目的开发过程中,离不开各种调试,那么,我们今天介绍一个工具,django debug toolbar,该工具为我们提供了更加丰富的调试信息,如提供session信息,SQL查询信息等等。 该插件配置简单,功能齐全,在调试中相当方便,而且灵活轻便。那么我们此次就通过一个django的demo来演示该插件的用法。
install
pip install django-debug-toolbar
pip install django-debug-toolbar==3.2
usage
项目基本配置
创建一个Djando项目:
djnago-admin startproject UT
cd UT
python manage.py startapp app01
执行迁移:
python manage.py makemigrations
python manage.py mirate
编写用于后续测试视图和模板文件:
views.py
:
from django.shortcuts import render
# Create your views here.
def index(request):
return render(request, 'index.html')
index.html
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>django-debug-toolbar测试页面</h1>
</body>
</html>
配置django-debug-toolbar
settings.py
:
# 在本地调试的话,需要添加
INTERNAL_IPS = ['127.0.0.1', ]
# 在 INSTALLED_APPS 中配置
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles', # debug_toolbar 要在django.contrib.staticfiles的下面
'app01.apps.App01Config', # 首先要有你的应用
'debug_toolbar' # 配置debug_toolbar
]
# debug_toolbar的中间件尽可能的往前配置
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware', # debug_toolbar的中间件
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
注意,在中间件部分,如果你的中间件中有对响应内容进行编码的中间件,如GZipMiddleware
,那么debug_toolbar的中间件要在这些中间件的后面。
urls.py
:
import debug_toolbar # 必要的导入
from django.contrib import admin
from django.urls import path, include # 导入 include
from django.conf import settings # 导入 settings
from app01 import views
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', views.index), # 配置一个路由用来稍后进行测试
]
# debug_toolbar这个工具是根据settings中的DEBUG来判断是否启用
if settings.DEBUG:
urlpatterns.append(path('__debug__/', include(debug_toolbar.urls)),)
现在,就可以正常的启动Djando,进行访问了:
that's all