安裝django-extensions後,使用比runserver更便捷的runserver_plus

想做的事情 zuò de

在Django的错误界面上(浏览器中)进行调试。
使其能够使用交互式shell。

请把下面的句子用中文进行本地化改述,只需要一种选项:

请提供以下内容的中文翻译,只需要提供一种版本:

使用Django扩展和Werkzeug库。

django-extensions是什么?

django-extensions是一种可以扩展manage.py功能的工具,还有其他许多命令可用。
* 文档
* 仓库

Werkzeug是什么?

Werkzeug 是一個綜合性的 WSGI Web 應用程式庫。它最初是作為一個各種 WSGI 應用程式的簡單實用工具集開始的,而現在已發展成為其中最先進的 WSGI 實用工具庫之一。

是指能够方便地使用WSGI的工具。

WSGI是什么?

WSGI(Web Server Gateway Interface)并不是一个服务器、Python模块、框架、API或其他任何类型的软件。它只是用于服务器和应用程序通信的接口规范。

据说,由于出现了各种不同的Python Web框架和分散的通信规范,存在统一接口的目的。

安装

安装

$ pip install django-extensions Werkzeug

只需将其添加到settings.py中

...
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    'django_extensions', # <- 追記
]
...

编码

只需要一个选项,用中文来转述以下内容:例如,在一个只显示字符串“test”的视图中。

from django.shortcuts import render
from django.http import HttpResponse


def test(request):
    message = 'test'
    return HttpResponse(message)

如果把变量message错写成mesage和类型,那么

from django.shortcuts import render
from django.http import HttpResponse


def test(request):
    message = 'test'
    return HttpResponse(mesage) # <- タイポ

执行

运行服务器

首先执行平时的runserver。

$ python manage.py runserver

访问 http://127.0.0.1:8000/ 。
出现了以下错误页面。

スクリーンショット 2020-08-21 12 21 41

运行服务器增强版

这次执行runserver_plus。
只需将runserver替换为runserver_plus。
稍后会用到Debugger PIN。

$ python manage.py runserver_plus

...
 * Debugger is active!
 * Debugger PIN: 125-696-991 # <- これ

在runserver_plus中,就是这样的感觉。

スクリーンショット 2020-08-21 11 46 30

当您将鼠标悬停在代码区域上时,将会出现一个终端图标,您只需点击即可。

スクリーンショット 2020-08-21 12 10 42

输入之前的调试器PIN码

スクリーンショット 2020-08-21 12 13 02

你将能够使用对话式外壳。

スクリーンショット 2020-08-21 12 14 31

结束

非常感谢您阅读到最后。

bannerAds