Die `urls.py`-Datei ist eine wesentliche Komponente beim Entwerfen von Webseiten mit Django, einem hohen Maßstab, Python-orientierten Web-Framework. Sie dient als Routing-Karte für Django-basierte Webseiten und ist dafür verantwortlich, die URL, auf die ein Benutzer zugreift, an die entsprechende Funktion oder Klasse in Ihrer `views.py`-Datei zu verbinden.
Das Django-Projekt befolgt das Model-View-Controller (MVC) Design Pattern und definiert eine URL-Konfiguration, um URLs auf Ansichten abzubilden. Laut der offiziellen Django-Dokumentation: “Um eine Webseite von Ihrem Webserver an Ihren Benutzer zu bekommen, braucht Django einen Weg, um festzustellen, was für eine Ansicht für eine gegebene URL gesucht wird.” Diese Aufgabe wird durch `urls.py` ausgeführt.
Die `urls.py`-Datei enthält eine Liste von URL-Mustern, die Django durchläuft, bis es ein Muster findet, das zur angeforderten URL passt. Lange Rede, kurzer Sinn, es definiert eine Tabelle von Inhalt-beziehung zwischen den Web-URLs und dem Code auf der Serverseite.
Zum Beispiel:
```python
from django.urls import path
from . import views
urlpatterns = [
path(‘home/’, views.home, name=‘home’),
path(‘about/’, views.about, name=‘about’),
]
```
In diesem Beispiel enthält `urlpatterns` eine Liste von `path()`-Funktionen. Jede Funktion `path()` definiert ein Muster für eine URL (zum Beispiel ‘home/’, ‘about/’). Wenn ein Benutzer auf diese URL zugreift (z.B. ‘www.yourwebsite.com/home/’), dann ruft Django die entsprechende Funktion oder Klasse in der `views.py`-Datei auf (in diesem Fall `views.home` oder `views.about`).
Es ist wichtig zu beachten, dass die Reihenfolge der URL-Muster in den `urlpatterns` wichtig ist. Django durchläuft die Liste von oben nach unten, bis es eine Übereinstimmung findet. Daher sollten spezifischere URL-Muster weiter oben in der Liste stehen als allgemeinere.
Die `urls.py`-Datei ist ein mächtiges Werkzeug in Django, das hilft, die Struktur und das Routing für Ihre Webseite zu kontrollieren.
Quellen:
- Django Projekt Dokumentation
- Real Python Tutorials
- The Django Book
- Web Development with Django Cookbook – Aidas Bendoraitis.