29. URL Router

29.1. Global URLs

29.2. In app URLs

29.3. urlpatterns

Code 29.1. 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)),
    ]

29.4. path

Code 29.2. 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())
]

29.5. url

Code 29.3. Path usage

29.6. include

Code 29.4. Path usage

29.7. URLs reversing

29.8. URLs in templates