Python Django路由详解
在Django中,路由是通过urls.py
文件定义的,这个文件包含了一组URL模式(patterns),它告诉Django当用户访问特定的URL时,应该执行哪个视图函数。
以下是一个简单的例子,展示了如何在Django中定义路由:
# urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
path('about/', views.about, name='about'),
# 使用带有参数的路由
path('articles/<int:year>/', views.year_archive, name='year_archive'),
# 使用带有两个参数的路由
path('articles/<int:year>/<int:month>/', views.month_archive, name='month_archive'),
# 使用带有可选参数的路由
path('articles/<int:year>/<int:month>/<slug:slug>/', views.article_detail, name='article_detail'),
]
在这个例子中,我们定义了几个路由,每个路由都关联到了views.py
文件中对应的视图函数。
- 路由
'about/'
关联到了视图函数views.about
。 - 路由
'articles/<int:year>/'
关联到了视图函数views.year_archive
,并且期望有一个整数类型的参数year
。 - 路由
'articles/<int:year>/<int:month>/'
关联到了视图函数views.month_archive
,并且期望有两个整数类型的参数year
和month
。 - 路由
'articles/<int:year>/<int:month>/<slug:slug>/'
关联到了视图函数views.article_detail
,并且期望有三个参数:year
(整数类型),month
(整数类型)和slug
(任意单词,但通常是一个友好的URL)。
在这个例子中,我们使用了path
函数来定义路由,它是Django 2.0引入的一种新的URL路由系统,简洁而强大。
评论已关闭