Переменные класса ViewSet

Сейчас у меня реализуется следующая логика для GET-запроса:

class SomeViewSet(mixins.ListModelMixin,
                  GenericViewSet):
    count = None

    def get_queryset(self):
        query_set = ... # some_logic
        self.count = query_set.count()
        return query_set

    def list(self, request, *args, **kwargs):
        response = super().list(request, *args, **kwargs)
        response.data = {'count': self.count,
                         'data': response.data}
        return response

То есть вычисление queryset происходит по не совсем обычной логике, и в нем может оказаться разное количество объектов, которое нужно вернуть в GET-запросе, так как доступа к переменной query_set внутри функции list у меня нет, то я решил сделать это при помощи переменной класса. Но все равно не покидает ощущение, что это не очень правильно. Какие есть еще варианты?

Вернуться на верх