Back
Syntax
Study
Editor
Mode:
HTML
CSS
JavaScript
PHP
Reset
Run »
HTML / CSS / JS
# blog/urls.py — URL patterns from django.urls import path, re_path from . import views app_name = 'blog' # sets the application namespace urlpatterns = [ # path() with typed converters path('', views.PostListView.as_view(), name='post-list'), path('<int:pk>/', views.PostDetailView.as_view(), name='post-detail'), path('<int:pk>/edit/', views.PostUpdateView.as_view(), name='post-update'), path('<int:pk>/delete/', views.PostDeleteView.as_view(), name='post-delete'), path('create/', views.PostCreateView.as_view(), name='post-create'), path('tag/<slug:tag_slug>/', views.PostListView.as_view(), name='posts-by-tag'), # re_path() for a date-based archive URL re_path( r'^archive/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/$', views.PostArchiveView.as_view(), name='post-archive', ), ] # mysite/urls.py — root URL configuration from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('blog/', include('blog.urls', namespace='blog')), path('accounts/', include('django.contrib.auth.urls')), ] # Generating URLs in Python from django.urls import reverse url = reverse('blog:post-detail', kwargs={'pk': 42}) # -> '/blog/42/' # Generating URLs in templates # {% url 'blog:post-detail' pk=post.pk %} # {% url 'blog:posts-by-tag' tag_slug=tag.slug %}
Result
Open