diff --git a/core/apps/products/urls.py b/core/apps/products/urls.py index 5c656f2..8dc015f 100644 --- a/core/apps/products/urls.py +++ b/core/apps/products/urls.py @@ -13,6 +13,7 @@ urlpatterns = [ path('product/', include( [ path('/list/', product_views.ProductListApiView.as_view()), + path('list/', product_views.ProductsApiView.as_view()), ] )), path('search/', search_views.SearchApiView.as_view()), diff --git a/core/apps/products/views/product.py b/core/apps/products/views/product.py index 2f1ae63..e40622d 100644 --- a/core/apps/products/views/product.py +++ b/core/apps/products/views/product.py @@ -21,3 +21,18 @@ class ProductListApiView(generics.GenericAPIView): return self.get_paginated_response(serializer.data) serializer = self.serializer_class(products, many=True, context={'user': request.user}) return Response(serializer.data, status=200) + + +class ProductsApiView(generics.GenericAPIView): + serializer_class = serializers.ProductListSerializer + queryset = Product.objects.all() + permission_classes = [] + + def get(self, request): + products = Product.objects.all() + page = self.paginate_queryset(products) + if page is not None: + serializer = self.serializer_class(page, many=True) + return self.get_paginated_response(serializer.data) + serializer = self.serializer_class(products, many=True) + return Response(serializer.data, status=200) \ No newline at end of file