154 lines
5.0 KiB
Markdown
154 lines
5.0 KiB
Markdown
# Django 调试–在你的 Django 网页上添加一个调试栏
|
||
|
||
> 原文:<https://www.askpython.com/django/django-debugging>
|
||
|
||
在本文中,我们将讨论如何执行 Django 调试。我们将学习 web 开发中需要的一项重要技术,称为调试,然后进一步学习如何将调试器工具添加到我们的网站中。
|
||
|
||
所以让我们开始吧!!
|
||
|
||
## **调试的艺术**
|
||
|
||
不管有多专业,每个开发人员都会在生命的某个阶段处理错误。此外,调试错误不是一件容易的事情;首先指出错误并消除它需要花费大量时间。因此,每个开发人员都必须了解调试。
|
||
|
||
但是有了 Django,你猜怎么着,调试过程对你来说变得简单多了。您只需要在您的 web 应用程序上安装 Django 调试器工具,就可以了。
|
||
|
||
因此,现在我们知道了为什么调试是必不可少的,让我们开始动手吧。
|
||
|
||
## Django 中调试的先决条件
|
||
|
||
现在要使用调试工具栏,我们需要一个网站。如果你有你的[项目](https://www.askpython.com/django/django-app-structure-project-structure),你可以使用它。否则,添加下面的[视图](https://www.askpython.com/django/django-views)和相应的 URL 路径。
|
||
|
||
```py
|
||
def SampleView(request):
|
||
Html = '<body><h1>Django Caching<h1><br><p>Welcome to Caching Tutorial</p></body>'
|
||
return HttpResponse(html)
|
||
|
||
```
|
||
|
||
确保 **<体>** 存在;否则,调试器工具将不会显示在网页上,其模板没有 **< body >标签。**
|
||
|
||
代码的 [URL 路径](https://www.askpython.com/django/django-url-mapping)将是:
|
||
|
||
```py
|
||
path('sample/', SampleView),
|
||
|
||
```
|
||
|
||
现在,对于下一部分,您可以以上面显示的任何形式存储缓存:
|
||
|
||
## Django 调试器工具
|
||
|
||
调试器工具包括各种调试选项,我们可以在特定的网页上使用。我们现在将研究工具栏提供的各种工具
|
||
|
||
* **Version:** 给出了我们正在使用的 Django 的版本。
|
||
* **时间**:显示加载网页所用的时间
|
||
* **设置:**显示网页的设置
|
||
* **请求:**显示所有被请求的元素——视图、cookies 等。
|
||
* **SQL:** 显示 SQL DB 调用的列表
|
||
* **静态文件:**给出关于静态文件的信息
|
||
* **模板:**给出关于模板的信息
|
||
* **高速缓存:**告知关于当前高速缓存的信息
|
||
* **日志:**显示注册的日志数量。(参见 [Django Logging](https://www.askpython.com/django/django-logging) 了解日志信息)
|
||
|
||
## **安装 Django 调试工具**
|
||
|
||
在这一节中,我们将安装 Django 调试器工具栏所需的所有需求
|
||
|
||
### 1)安装 Django 调试器工具栏
|
||
|
||
为了安装 Django 调试器工具栏,我们使用了 [pip install](https://www.askpython.com/python-modules/python-pip) 命令。在终端/shell 中运行以下代码:
|
||
|
||
```py
|
||
pip install django-debug-toolbar
|
||
|
||
```
|
||
|
||
### 2)在 INSTALLED_APPS 中添加调试器工具
|
||
|
||
在 settings.py 中,在 **INSTALLED_APPS** 部分添加以下行
|
||
|
||
```py
|
||
INSTALLED_APPS = [
|
||
# ...
|
||
'debug_toolbar',
|
||
]
|
||
|
||
```
|
||
|
||
还要确保 settings.py 文件中存在以下行
|
||
|
||
```py
|
||
STATIC_URL = '/static/'
|
||
|
||
```
|
||
|
||
上面的代码应该已经存在,但如果它不存在,那么只需在最后添加上面的代码。
|
||
|
||
### 3)将调试工具栏导入到 urls.py
|
||
|
||
要在网页上使用**调试工具栏**,我们必须链接到网页的 URL 路径。
|
||
|
||
因此,在 urls.py 中,添加代码:
|
||
|
||
```py
|
||
from django.conf import settings
|
||
from django.URLS import path,include
|
||
|
||
if settings.DEBUG:
|
||
import debug_toolbar
|
||
urlpatterns = [
|
||
path('__debug__/', include(debug_toolbar.urls)),
|
||
] + urlpatterns
|
||
|
||
```
|
||
|
||
确保在 settings.py 中将 **DEBUG** 设置为 **TRUE** ,这样才能工作。
|
||
|
||
这里我们将 debug_toolbar 添加到 URL 模式列表中,所有其他的 URL 都在这里
|
||
|
||

|
||
|
||
Debug ToolBar urls.py
|
||
|
||
### 4)启用中间件
|
||
|
||
必须将与 Django 调试工具栏相关联的中间件添加到 settings.py 中的**中间件**部分
|
||
|
||
```py
|
||
MIDDLEWARE = [
|
||
# ...
|
||
'debug_toolbar.middleware.DebugToolbarMiddleware',
|
||
]
|
||
|
||
```
|
||
|
||
### 5)提及 INTERNAL_IPS
|
||
|
||
只有当 IP 出现在 settings.py 中的 **INTERNAL_IPS** 列表中时,才会显示调试工具栏。出于本地开发的目的,将 IP**127 . 0 . 0 . 1**添加到列表中。
|
||
|
||
```py
|
||
INTERNAL_IPS = [
|
||
'127.0.0.1',
|
||
]
|
||
|
||
```
|
||
|
||
如果 **INTERNAL_IPS** 列表不存在,则在 settings.py 的最后添加上述列表,并添加 IP“127 . 0 . 0 . 1”
|
||
|
||
## **Django 调试工具的输出**
|
||
|
||
添加所有代码后,在您首选的浏览器中访问 **127.0.0.1:8000/sample/** 。
|
||
|
||
如果您看到下面的输出,您的实现是成功的!如果没有,检查上面的代码是否在您的文件中丢失了。
|
||
|
||

|
||
|
||
Debug toolbar
|
||
|
||
就是这样,工具栏会出现在网页的右侧。
|
||
|
||
## **结论**
|
||
|
||
就这样,伙计们!!这也是关于 Django 调试器的。请务必查看 Django 异常处理文章,以了解更多关于调试异常的信息。
|
||
|
||
下一篇文章再见!!在那之前,继续练习!! |