Django REST Framework:在没有 ViewSet 的情况下添加 API 到 API 根页面
如果你使用的是 Django REST Framework 中的 APIView,那么你可以通过在 urls.py 中手动添加 API 到 API 根页面。
例如:
from rest_framework.decorators import api_view, permission_classes
from rest_framework.permissions import AllowAny
from rest_framework.response import Response
from rest_framework.reverse import reverse
@api_view(['GET'])
@permission_classes([AllowAny])
def api_root(request, format=None):
return Response({
'users': reverse('user-list', request=request, format=format),
'posts': reverse('post-list', request=request, format=format),
# 添加你的 API
'your_api': reverse('your-api', request=request, format=format),
})
然后,你需要在 urls.py 中添加你的 API,并把它指定为 API 根页面的一部分。
例如:
from django.urls import path, include
from rest_framework.routers import DefaultRouter
from . import views
router = DefaultRouter()
router.register('users', views.UserViewSet)
router.register('posts', views.PostViewSet)
urlpatterns = [
path('', views.api_root),
path('', include(router.urls)),
# 添加你的 API
path('your-api/', views.YourApiView.as_view(), name='your-api'),
]
现在,你的 API 应该已经添加到 API 根页面了。
原文地址: https://www.cveoy.top/t/topic/loXD 著作权归作者所有。请勿转载和采集!