Part 1: Django Grundlagen & Setup
Willkommen zum ersten Teil der Django-Tutorial-Serie! In diesem Guide lernst du die Grundlagen: Von der Installation bis hin zu deiner ersten "Hallo Welt"-Seite.
1. Was ist Django?
Django ist ein High-Level Python Web-Framework, das eine schnelle Entwicklung und sauberes, pragmatisches Design ermöglicht. Es folgt dem MVT-Muster (Model-View-Template) und wird oft als "Batteries included" bezeichnet, da es fast alles mitbringt, was man für eine moderne Webseite braucht (Admin-Bereich, Authentifizierung, Datenbank-Anbindung).
2. Voraussetzungen
Stelle sicher, dass du Python installiert hast. Du kannst es prüfen mit:
python --version
3. Schritt-für-Schritt Installation
A. Virtuelle Umgebung erstellen
Es ist Best Practice, für jedes Projekt eine eigene Umgebung zu erstellen, um Versionskonflikte zu vermeiden.
# Ordner erstellen und hineingehen
mkdir mein_projekt
cd mein_projekt
# Virtuelle Umgebung erstellen
python -m venv venv
# Aktivieren (Windows)
venv\Scripts\activate
# Aktivieren (Mac/Linux)
source venv/bin/activate
B. Django installieren
pip install django
4. Ein Projekt erstellen
Ein Django-Projekt ist die gesamte Webanwendung.
django-admin startproject mysite .
(Der Punkt . am Ende sorgt dafür, dass das Projekt im aktuellen Ordner erstellt wird, anstatt einen neuen Unterordner zu generieren.)
Die Struktur sieht nun so aus:
manage.py: Ein Kommandozeilen-Tool zur Steuerung des Projekts.mysite/: Der eigentliche Projekt-Kern (Einstellungen, URLs).
5. Eine App erstellen
In Django ist ein Projekt eine Sammlung von Konfigurationen und Apps. Eine App ist ein Modul, das eine bestimmte Funktion erfüllt (z.B. ein Blog, ein Forum, ein Shop).
python manage.py startapp core
Nun musst du Django mitteilen, dass diese neue App existiert. Öffne mysite/settings.py und füge core zu INSTALLED_APPS hinzu:
# mysite/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'core', # Deine neue App
]
6. Die erste View erstellen
Eine "View" ist eine Funktion, die eine Anfrage (Request) entgegennimmt und eine Antwort (Response) zurückgibt.
Öffne core/views.py:
from django.http import HttpResponse
def home(request):
return HttpResponse("<h1>Hallo Welt! Dies ist meine erste Django-Seite.</h1>")
7. URL-Routing konfigurieren
Damit Django weiß, unter welcher Adresse die View erreichbar ist, müssen wir URLs verknüpfen.
- Erstelle eine neue Datei
core/urls.py:from django.urls import path from . import views
urlpatterns = [ path('', views.home, name='home'), ]
2. Verbinde diese App-URLs mit dem Hauptprojekt in `mysite/urls.py`:
```python
from django.contrib import admin
from django.urls import path, include # include importieren
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('core.urls')), # Hier wird die App eingebunden
]
8. Den Server starten
Jetzt ist alles bereit! Starte den lokalen Entwicklungsserver:
python manage.py runserver
Öffne deinen Browser und gehe auf: http://127.0.0.1:8000/
Herzlichen Glückwunsch! Du siehst nun "Hallo Welt!".
Zusammenfassung & Ausblick
Was wir in Part 1 gelernt haben:
- Wie man eine virtuelle Umgebung aufsetzt.
- Wie man ein Django-Projekt und eine App startet.
- Wie das Routing von der URL zur View funktioniert.
In Part 2 werden wir uns ansehen:
- Wie man Templates (HTML-Dateien) nutzt.
- Wie man das MVT-Modell richtig einsetzt.
- Wie man die erste Datenbank-Migration durchführt.
Hast du Fragen zu diesem ersten Teil?