Django rest framework Django Rest框架嵌套APIView路由

Django rest framework Django Rest框架嵌套APIView路由,django-rest-framework,Django Rest Framework,如果我在 /foo 是否可以在其下的url处使用APIView?示例APIView将位于 /foo/count 我尝试向Django注册url,但除了将/foo更改为其他内容外,它不起作用?如果我在注册ModelViewSet url模式之前向Django注册url,它就起作用了 urlpatterns += [ url( regex=r'^foo/count/', view=Foo.as_view(), name='foo_count', ) ] urlpat

如果我在

/foo
是否可以在其下的url处使用APIView?示例APIView将位于

/foo/count


我尝试向Django注册url,但除了将/foo更改为其他内容外,它不起作用?

如果我在注册ModelViewSet url模式之前向Django注册url,它就起作用了

urlpatterns += [
url(
    regex=r'^foo/count/',
    view=Foo.as_view(),
    name='foo_count',
    )
]
urlpatterns += foo_urlpatterns

您可以使用
@list\u-route
装饰器

from rest_framework.decorators import list_route

class FooViewSet(viewsets.ModelViewSet):

    @list_route()
    def count(self, request):
       ...
       return Response(...)
它会将新的端点附加到视图集url
/foo/count/
,就像您想要的那样