如果你使用的是 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 根页面了。

Django REST Framework:在没有 ViewSet 的情况下添加 API 到 API 根页面

原文地址: https://www.cveoy.top/t/topic/loXD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录