Hallo.
Ich möchte mit der Entwicklung mit Bachstelze fortfahren, aber derzeit ist keine der zum Debuggen usw. erforderlichen Bibliotheken installiert. Apropos Django-Bibliotheken, die zum Debuggen verwendet werden können, django-extensions oder [django-debug-toolbar](https: // django-debug-toolbar) .readthedocs.io / de / latest /) und so weiter. ~~ Es scheint, dass nur das bekannt ist ~~
Also habe ich dieses Mal Django-Erweiterungen eingeführt und den Ablauf zusammengefasst. Ich möchte auch die Django-Bibliothek untersuchen.
Ich werde über den Ablauf der Einführung von Django-Erweiterungen schreiben. Ich habe es auf dem Mac gemacht.
Führen Sie zunächst den folgenden Befehl aus.
pip install django-extensions
Fügen Sie als Nächstes Django-Erweiterungen zu INSTALLED_APPS in mysite / settings / base.py hinzu.
Sie können die Grundfunktionen allein damit verwenden, aber es gibt einige, die nicht verwendet werden können. Es gibt einen Befehl, der ein ER-Diagramm des Modells generieren kann (siehe unten), für den jedoch einige Schritte erforderlich sind.
brew install Graphviz
pip install pygraphviz
Ich habe einen Fehler erhalten und es hat nicht funktioniert, aber ich konnte ihn lösen, indem ich mir diese AUSGABE ansah. Referenz: pygraphviz kann unter Mac OS 10.11.6 nicht installiert werden
□show_urls Die Funktion von Django-Erweiterungen ist sehr praktisch. Der erste, der vorgestellt wird, ist show_urls.
python manage.py show_urls
Die Beziehungen in der "Ansicht" und "Vorlage" der im Django-Projekt festgelegten URL werden in einer Liste angezeigt. Ich denke, dieser Ausdruck ist schwer zu verstehen, also schauen wir uns zuerst das Ausführungsprotokoll an. (Auszug)
/django-admin/login/ django.contrib.admin.sites.login admin:login
/django-admin/logout/ django.contrib.admin.sites.logout admin:logout
/django-admin/password_change/ django.contrib.admin.sites.password_change admin:password_change
/django-admin/password_change/done/ django.contrib.admin.sites.password_change_done admin:password_change_done
Auf der linken Seite / django-admin / login / etc. http://localhost:8000/ Stellt den folgenden Pfad (URL-Muster) dar.
Das zentrale django.contrib.admin.sites.login usw. zeigt den Speicherort der Ansichtsfunktion an. Schauen Sie sich django.contirib.admin.sites auf django an. Sie können sehen, dass es eine Anmeldefunktion gibt.
Das Admin: Login rechts zeigt den Namen des Pfades. Wenn Sie die URL in url_patterns festlegen, legen Sie sie als drittes Argument fest
name="hogehoge"
Du schreibst es so. Dieser Name entspricht dem.
Als Test möchte ich eine Ansichtsfunktion hinzufügen und sie mit show_urls untersuchen. Ich werde den Code basierend auf der Referenzseite schreiben. Referenz: [Einführung in Django] Zeigen wir die Seite mithilfe von Ansichten an
Der hinzugefügte Code lautet wie folgt.
home/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world.")
home/urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
mysite/urls.py
from home import views as home_views #Oben hinzugefügt
url(r'^home/', include('home.urls')) #In der Liste der URL-Muster hinzugefügt
Klicken Sie auf [hier](http: // localhost: 8000 / home /) und wenn Hallo, Welt. Angezeigt wird, ist es OK.
Führen Sie nun den folgenden Befehl aus.
python manage.py show_urls | grep home
/home/ home.views.index index
Es wurde angezeigt. Dies ist nützlich, wenn Sie Ansichten importieren oder URLs in Vorlagen eingeben. Referenz: So fügen Sie den URL-Link der Django-App und ihre Vorteile ein
** □ ER-Diagramm ** Referenz: ER-Diagramm (Entity Relationship Diagram) Mit Django-Erweiterungen können Sie mit einem einzigen Befehl ein ER-Diagramm eines Projekts in PNG erstellen. Es ist eine ausgezeichnete, die beim Entwerfen einer Datenbank verwendet werden kann. Lassen Sie uns nun den Befehl ausführen und überprüfen.
python manage.py graph_models -a -o mysite_er.png
Ich denke, mysite_er.png wird im selben Verzeichnis generiert. ER-Diagramm
□runserver_plus Diesmal möchte ich noch einen vorstellen. Es eignet sich hervorragend zum Debuggen in einem Webbrowser. Lassen Sie uns den Befehl sofort ausführen.
python manage.py runserver_plus
Dann ...
CommandError: Werkzeug is required to use runserver_plus. Please visit http://werkzeug.pocoo.org/ or install via pip. (pip install Werkzeug)
** Installieren Sie Wekzeug wie angegeben und versuchen Sie es erneut. ** ** **
Es unterscheidet sich von einem normalen Runserver. In der letzten Zeile des Protokolls befindet sich so etwas. Notieren Sie sich dies, da Sie es später verwenden werden.
* Debugger PIN: xxx-xxx-xxx
Bearbeiten wir nun den Code wie folgt.
home/views.py
return HttpReesponse("Hello, world.") #Machen Sie absichtlich einen Fehler
Fehlerbildschirm
Fehlerbildschirm unten
Auf der rechten Seite befindet sich eine terminalähnliche Taste. Sie können debuggen, indem Sie darauf klicken und den zuvor notierten PIN-Code eingeben. Python-Code kann interaktiv ausgeführt werden, sodass Sie die Werte von Objekten wie Variablen überprüfen können.
Dieses Mal habe ich Django-Erweiterungen in das Projekt eingeführt. Nächstes Mal möchte ich Bachstelze berühren.
Recommended Posts