Как сортировать и подсчитывать значения, когда они выбраны?
Я отправляю запрос на сайт https://swapi.dev/ полученные данные необходимо отсортировать:
Обеспечить функциональность для подсчета вхождений значений (комбинаций значений) для столбцов. Например, при выборе столбцов date и homeworld таблица должна показывать подсчеты следующим образом:
мой код не очень хорош, потому что я пишу что-то вроде этого в первый раз:
import requests
from rest_framework.views import APIView
from rest_framework.viewsets import ModelViewSet
from rest_framework import status
from rest_framework.response import Response
from datetime import datetime
from rest_framework import filters
from rest_framework.pagination import PageNumberPagination
from rest_framework.decorators import action
# class StarWarsAPIListPagination(PageNumberPagination):
# page_size = 4
# page_size_query_param = 'page_size'
# max_page_size = 20
class StarView(APIView):
# pagination_class = StarWarsAPIListPagination
# filter_backends = (filters.OrderingFilter)
# ordering_fields = ('name',)
def get(self, request):
date = datetime.today()
page = request.query_params.get('page', 1)
url = f'https://swapi.dev/api/people/?page={page}'
response = requests.get(url, date).json()
return Response(response, status=status.HTTP_200_OK)
class StartDateView(APIView):
def get(self, request):
date = datetime.today()
page = request.query_params.get('page', 1)
url = f'https://swapi.dev/api/people/?page={page}'
response = requests.get(url).json()
a = response['results'][0]['name']
# a = response['results']
# for i in range(len(a)):
# if a[i]["name"] == "R2-D2":
# return Response(a[i]['name'], status=status.HTTP_200_OK)