8. URL Router

8.1. Global URLs

8.2. In app URLs

8.3. urlpatterns

Listing 8.31. Path usage
from django.conf import settings
from django.contrib import admin
from django.urls import path
from django.urls import include
import debug_toolbar

urlpatterns = [
    path('admin/', admin.site.urls),
    path('contact/', include(('contact.urls', 'contact'), namespace='contact')),
]

if settings.DEBUG:
    urlpatterns += [
        path('__debug__/', include(debug_toolbar.urls)),
    ]

8.4. path

Listing 8.32. Path usage
from django.urls import path
from contact.views import ListView, DetailView, ContactAPI


urlpatterns = [
    path('<int:id>/', DetailView.as_view(), name='details'),
    path('', ListView.as_view(), name='list'),
    path('api/', ContactAPI.as_view())
]

8.5. url

Listing 8.33. Path usage

8.6. include

Listing 8.34. Path usage

8.7. URLs reversing

8.8. URLs in templates