Julianjp
Julianjp

Reputation: 91

Nested action in a GenericAPIView

How can I create a new nested route in GenericAPIView in django rest framework for enable a API URL like 'report/tasks/export_excel'

Viewset


class TaskReportViewSet(generics.GenericAPIView):
    queryset = TiempoOperacion.objects.all()
    pagination_class = StandardResultsSetPagination
    serializer_class = TiempoOperacionSerializer

    def get(self, request):
    """
    Some code for 'get' request ...
    """

    @action(detail=False, methods=['GET'])
    def export_excel(self, request):
        sheet = excel.pe.Sheet([[1, 2],[3, 4]])
        return excel.make_response(sheet, "csv")

Urls


urlpatterns = [
    url(r'^', include(router.urls)),
    url(r'^report/tasks/', TaskReportViewSet.as_view()),
]

Upvotes: 2

Views: 1653

Answers (1)

Linovia
Linovia

Reputation: 20976

You don't.

@action is only meant for ViewSet, GenericViewSet, ModelViewSet, all found in rest_framework.viewsets.

Upvotes: 3

Related Questions