def list(self, request: request.Request, *args: Any, **kwargs: Any) -> Response: actions_list = [] actions = self.get_queryset() actions_list = ActionSerializer(actions, many=True, context={'request': request}).data if request.GET.get('include_count', False): actions_list.sort(key=lambda action: action.get('count', action['id']), reverse=True) return Response({'results': actions_list})
def list(self, request: request.Request, *args: Any, **kwargs: Any) -> Response: actions = self.get_queryset() actions_list: List[Dict[Any, Any]] = ActionSerializer(actions, many=True, context={"request": request}).data # type: ignore if request.GET.get("include_count", False): actions_list.sort( key=lambda action: action.get("count", action["id"]), reverse=True ) return Response({"results": actions_list})
def list(self, request: request.Request, *args: Any, **kwargs: Any) -> Response: actions_list = [] actions = self.get_queryset() include_count = request.GET.get('include_count', False) for action in actions: action_dict = { 'id': action.pk, 'name': action.name, 'steps': ActionStepSerializer(action.steps.all(), many=True).data } if include_count: action_dict['count'] = Event.objects.filter_by_action(action, count=True) actions_list.append(action_dict) actions_list.sort(key=lambda action: action.get('count', action['id']), reverse=True) return Response({'results': actions_list})