Django URL 配置是一个核心功能,它允许你定义URL模式并将其映射到视图函数。下面是一些关于Django URL配置的关键点:

URL模式

URL模式定义了URL的结构和参数。你可以使用正则表达式来匹配URL模式。

  • 命名空间:你可以为你的应用创建命名空间,以便在URL中引用。

    from django.urls import path, include
    
    app_name = 'myapp'
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('myapp.urls', namespace='myapp')),
    ]
    
  • 命名视图:命名视图使得URL和视图函数的映射更加清晰。

    from django.urls import path
    from . import views
    
    urlpatterns = [
        path('home/', views.home, name='home'),
    ]
    

URL分发

Django使用正则表达式来匹配URL模式,并将其映射到视图函数。

  • 路径参数:路径参数可以用圆括号和参数名来表示。

    from django.urls import path
    from . import views
    
    urlpatterns = [
        path('articles/<int:year>/', views.year_archive, name='year_archive'),
    ]
    
  • 查询参数:查询参数通常以?开头,后面跟着键值对。

    from django.urls import path
    from . import views
    
    urlpatterns = [
        path('search/', views.search, name='search'),
    ]
    

示例

以下是一个简单的示例,展示如何使用Django URL配置:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
    path('about/', views.about, name='about'),
    path('contact/', views.contact, name='contact'),
    path('docs/', views.docs, name='docs'),
]

def home(request):
    return HttpResponse('Welcome to the home page!')

def about(request):
    return HttpResponse('Welcome to the about page!')

def contact(request):
    return HttpResponse('Welcome to the contact page!')

def docs(request):
    return HttpResponse('Welcome to the documentation page!')

在上述代码中,docs视图将匹配/docs/路径。

希望这能帮助你更好地理解Django URL配置。

更多关于Django URL配置的信息

Django URL Configuration