Zu aller erst gehen wir wieder auf die Ubuntu Shell und richten uns ein neues Projektverzeichnis ein, richten eine virtuelle Pythonumgebung ein und starten den VS Code.

mkdir DjangoBlog cd DjangoBlog pipenv shell code .

In der Shell erkennt man dass nun (DjangoBlog) vorangestellt ist. Dies bedeutet, dass nun alle Pakete von Python, die wir noch installieren von anderen Projekten separiert werden.

Als nächstes installieren wir Django, den mysqlclient (für den Zugriff auf MySQL Server) und bootstrap5 (zum Designen unserer neuen Webseite)

pipenv install django mysqlclient crispy-bootstrap5 pip list

Mit dem o. g. “pip list” werden dann die installierten Packete angezeigt. Bei mir sind diese folgende:

Als nächstes können wir unser Django Projekt anlegen und die dazugehörige App.

Projektname: DjangoBlogProjekt

Appname: DjangoBlogApp

django-admin startproject DjangoBlogProjekt . python3 manage.py startapp DjangoBlogApp

Um später und vorallem zur Anfangszeit zwischen Projekt und App unterscheiden zu können, nehme ich hier unterschiedliche Namen in den Tutorial. Ein Projekt kann mehrere Apps beinhalten. Mehr hierzu in den folgenden Tutorial. Die Verzeichnisstruktur sollte dann wie folgt aussehen:

Starten wir nun den VS Code mit dem aktuellen Django Projekt mit

code .

Konfiguration von VS Code

Wir haben in der Grundkonfiguration die Erweiterung für den Zugriff auf den MySQL Server installiert. Nun konfigurieren wir den Zugriff auf unsere Datenbank.

Klicken wir auf der linken Seite auf das Datenbank Symbole und dann auf das Plus Zeichen, danach folgende Einstellungen vornehmen. Sobald auf connect geklickt wurde erscheint auf der Linken Seite die verbundene Datenbank.

Ändern wir noch den Namen in DjangoBlog so kann klar ersichtlich werden welche Datenbank bzw. Projekt wir nutzen. Zukünftig werden ja mehrere Projekte auf dem MySQL Server laufen. Bei mir schaut dies dann folgendermaßen aus:

Im VS Code starten wir nun ein neues Terminal und prüfen ob auch die pipenv aktiviert ist. Dies ist wichtig, sodass die Python Pakete richtig geladen und evtl. Nachinstallationen richtig laufen.

pipenv shell

Fangen wir mit der Konfiguration des DjangoBlogProjektes an. Diese findet überwiegend in der im Projektverzeichnis enthaltenen settings.py Datei statt. Standardmäßig verwendet Django eine sqlite3 Datenbank. wir wollen allerdings unsere Daten in der dazu vorher eingerichteten MySQL Datenbank abspeichern. Hierzu ändern wir folgenden Eintrag ab:

ENGINE: sagt Django, dass es sich um eine MySQL DB handelt

NAME: ist der Name der Datenbank indem die Tabellen angelegt werden

USER und PASSWORD: den Ihr im vorherigen vergeben habt

PORT: 33061 falls ihr den nicht geändert habt wäre der Standard-Port 3306

Beim ersten Start unseres Django Projektes müssen Standardtabellen geschrieben werden. Diese teilt man Django mit den folgenden Befehl im Terminal mit. Die folgenden Befehle benötigen wir immer bei einer Änderung an der Datenbank:

python3 manage.py makemigrations python3 manage.py migrate

Es erfolgt folgende Ausgabe:

Schauen wir uns nun die Datenbank einmal an. Wie wir sehen hat Django neue Tabellen eingerichtet:

Schön oder? Ohne dass wir etwas programmieren mussten! Starten wir nun einmal unsere Webseite mit:

python3 manage.py runserver

Wir können im Internetexplorer z. b. Google Chrome unter http://127.0.0.1:8000 nun die Testseite des Django Projektes sehen. Super es läuft schon einmal.

Soweit so gut. Im Nachfolgenden Kapitel erstellen wir unsere eigene Seite mit einem Inhalt. Dieser Inhalt kommt dann aus der DjangoBlogApp.