Как установить нумерацию страниц в django? - PullRequest
0 голосов
/ 05 марта 2020

как установить нумерацию страниц в представлениях на основе этой функции, я попробовал все стандартные django_pagination, но мне не помогли.

class Order_ListAPIView(APIView):

   def get(self,request,format=None):

       if request.method == 'GET':
           cur,conn = connection()
           order_query = ''' SELECT * FROM orders'''
           order_detail_query = ''' SELECT * FROM order_details'''

           with conn.cursor(MySQLdb.cursors.DictCursor) as cursor:

               cursor.execute(order_query)
               order_result = cursor.fetchall()
               order_data = list(order_result)

           ...
            ... #rest_code
             ...


           return Response({"order_data":order_data},status=status.HTTP_200_OK)
       else:
           return Response(status=status.HTTP_400_BAD_REQUEST)

1 Ответ

0 голосов
/ 05 марта 2020

В качестве предложения вы можете использовать django -rest-framework generi c views , нумерации страниц и django orm .

pagination.py

from rest_framework.pagination import PageNumberPagination
class OrderPagination(PageNumberPagination):
    page_size = 20 #default

views.py

from rest_framework.generics import ListAPIView
from .paginations import OrderPagination
from .models import Order

class OrderListAPIView(ListAPIView):
   serializer_class = your_serializer_class
   pagination_class = OrderPagination
   queryset = Order.objects.all()
...