Menu
CoddyTech

Projekte und Apps

Teil des Abschnitts Django-Grundlagen der Django-Journey von Coddy. Lektion 4 von 23.

Die Menü-App hat eine neue Seite mit Öffnungszeiten in menu/urls.py, aber unter /hours/ wird „Seite nicht gefunden“ angezeigt, weil das Projekt diese Datei nie einliest.

Ein Django-Projekt ist die gesamte Website: mysite/ enthält ihre Einstellungen und ihre zentrale URLconf. Eine App ist ein Teil der Website mit eigenen Views und URLs, hier menu/. Auf deinem Computer erstellt python manage.py startapp menu eine solche App.

Das Projekt übergibt einer App mit include() einen Teil der Adresse:

from django.urls import include, path

urlpatterns = [
    path("shop/", include("shop.urls")),
]

Django gleicht den Anfang der Adresse ab, shop/, und übergibt dann den Rest an shop/urls.py. Die Route "cart/" der App ist dann unter /shop/cart/ erreichbar. Das Präfix kann beliebigen Text enthalten, auch leer sein.

challenge icon

Aufgabe

Einfach

Sorge dafür, dass das Projekt seine Adressen an die Menü-App weitergibt.

  1. Importiere in mysite/urls.py include neben path.
  2. Ersetze die beiden Routen durch eine Route, die menu.urls einbindet. Gib ihr ein leeres Präfix, "", damit / und /about/ an ihrem Platz bleiben.

Öffne /hours/ und /about/: Beide funktionieren weiterhin.

Probier es selbst

from django.urls import path

from menu import views

urlpatterns = [
    path("", views.home),
    path("about/", views.about),
]

Alle Lektionen in Django-Grundlagen

Übe selbstständig: Django-Playground