Django REST Framework (DRF)是一个开源的Web框架,它提供了用于构建RESTful API的工具和功能。其中一个核心组件是路由系统,它允许我们定义URL模式以及将它们映射到视图函数。
配置路由
在DRF中,路由配置主要通过在urls.py
文件中定义路由列表来完成。这个列表包含了每个路由的URL模式和相应的视图函数或视图类。下面是一个基本的DRF路由配置示例:
from django.urls import path
from rest_framework.urlpatterns import format_suffix_patterns
from .views import UserList, UserDetail
urlpatterns = [
path('users/', UserList.as_view(), name='user_list'),
path('users/<int:pk>/', UserDetail.as_view(), name='user_detail'),
]
urlpatterns = format_suffix_patterns(urlpatterns)
在上面的示例中,我们从Django的urls
模块中导入path
函数,以及DRF的format_suffix_patterns
函数。我们还从.views
模块中导入了两个视图类:UserList
和UserDetail
。
接下来,我们使用path()
函数来定义两个URL模式。第一个URL模式是/users/
,它与UserList
视图类相关联,并命名为user_list
。第二个URL模式是/users/<int:pk>/
,它使用一个名为“pk”的整数参数,并与UserDetail
视图类相关联,并命名为user_detail
。
最后,我们使用format_suffix_patterns()
函数来格式化URL模式列表。这个函数可以将URL后缀添加到URL模式中,从而允许客户端在请求中指定响应的内容类型(如JSON、XML等)。