Переопределить метод списка в наборе представлений Django rest

#django #django-rest-framework

#django #django-rest-framework

Вопрос:

В наборе представлений Django Rest Framework у меня есть переопределенный список()

 class TicketViewSet(mixins.ListModelMixin,
                    viewsets.GenericViewSet):
     def_list():
        make_my_checks()
        things_copied_from_parent()
  

Поскольку list() содержит много строк кода, и я должен выполнять проверки в каждом наборе представлений, как я могу выполнить эти проверки и вернуть переопределенный метод? Такая вещь, как:

 def_list():
    make_my_checks()
    super(list())
  

Ответ №1:

Вы почти на месте!!!

 class TicketViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
    def list(self, request, *args, **kwargs):
        make_my_checks()  # your custom checks
        return super().list(request, *args, **kwargs)  # you should return them