[PYTHON] Installez django-extensions et utilisez runserver_plus qui est plus pratique que runserver

Chose que tu veux faire

Déboguer sur l'écran d'erreur (navigateur) de Django. Permet l'utilisation de shells interactifs.

Utilisez les bibliothèques django-extensions et Werkzeug.

Que sont les extensions django?

django-extensions étend la fonctionnalité de manage.py, et il existe de nombreuses autres commandes.

Qu'est-ce que Werkzeug?

Werkzeug est une bibliothèque d'applications Web WSGI complète. Il a commencé comme une simple collection de divers utilitaires pour les applications WSGI et est devenu l'une des bibliothèques d'utilitaires WSGI les plus avancées.

https://werkzeug.palletsprojects.com/en/1.0.x/

C'est quelque chose qui rend WSGI facile à utiliser.

Qu'est-ce que WSGI?

WSGI [1] n'est pas un serveur, un module Python, un framework, une API ou tout type de logiciel. Il s'agit simplement d'une spécification d'interface permettant au serveur et à l'application de communiquer.

http://wsgi.tutorial.codepoint.net/intro

Il semble qu'il y avait un but d'unifier l'interface parce que diverses normes de communication de Python sont sorties et qu'il y avait des normes de communication différentes.

Installation

Installer

$ pip install django-extensions Werkzeug

Ajoutez simplement à settings.py

pj_name/settings.py


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

    'django_extensions', # <-Postscript
]
.
.

code

Par exemple, dans une vue qui n'affiche que la chaîne "test"

views.py


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


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

Si vous avez mal tapé la variable message comme message

views.py


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


def test(request):
    message = 'test'
    return HttpResponse(mesage) # <-Faute de frappe

Courir

runserver

Tout d'abord, exécutez le serveur de run habituel.

$ python manage.py runserver

Accédez à http://127.0.0.1:8000/. Un tel écran d'erreur.

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

runserver_plus

Maintenant, exécutez runserver_plus. Changez simplement runserver en runserver_plus. Nous utiliserons le «code PIN du débogueur» plus tard.

$ python manage.py runserver_plus

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

Cela ressemble à ceci avec runserver_plus.

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

Lorsque vous passez la souris sur la zone de code, l'icône du terminal apparaît. Cliquez dessus.

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

Entrez le code PIN du débogueur

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

Vous pourrez utiliser un shell interactif.

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

La fin

Merci d'avoir lu jusqu'au bout.

Recommended Posts

Installez django-extensions et utilisez runserver_plus qui est plus pratique que runserver
Utilisez la commande pushd, qui est plus pratique que la commande cd, pour revenir instantanément au répertoire d'origine.
Comment installer et utiliser Tesseract-OCR
Comment installer et utiliser Graphviz