From 0de6e7cb4079f24305552badecac739a9f5befb7 Mon Sep 17 00:00:00 2001 From: Mojtaba-z Date: Sun, 30 Nov 2025 09:03:22 +0330 Subject: [PATCH] add - first step of update page access / fix pagination page size from 100 to 1000 --- apps/authorization/api/v1/api.py | 14 ++++++++++++++ apps/authorization/api/v1/urls.py | 7 +++++-- apps/core/pagination.py | 2 +- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/apps/authorization/api/v1/api.py b/apps/authorization/api/v1/api.py index f36a689..ce06ed3 100644 --- a/apps/authorization/api/v1/api.py +++ b/apps/authorization/api/v1/api.py @@ -5,6 +5,7 @@ from rest_framework import status from rest_framework import viewsets from rest_framework.decorators import action from rest_framework.exceptions import APIException +from rest_framework.permissions import AllowAny from rest_framework.response import Response from apps.authorization.api.v1.serializers import ( @@ -27,6 +28,19 @@ from apps.core.mixins.soft_delete_mixin import SoftDeleteMixin from common.helpers import get_organization_by_user +class UpdatePageAccessViewSet(BaseViewSet, SoftDeleteMixin, viewsets.ModelViewSet): + queryset = Page.objects.all() + serializer_class = PageSerializer + permission_classes = [AllowAny] + + @action(methods=['post'], detail=False, url_name='update_pages', url_path='update_pages') + def update_pages(self, request, *args, **kwargs): + queryset = self.queryset + + page_serializer = self.serializer_class(queryset) + return Response(page_serializer.data) + + class RoleViewSet(BaseViewSet, SoftDeleteMixin, viewsets.ModelViewSet): """ Crud Operations For User Roles """ diff --git a/apps/authorization/api/v1/urls.py b/apps/authorization/api/v1/urls.py index 3f398f7..dcfe92b 100644 --- a/apps/authorization/api/v1/urls.py +++ b/apps/authorization/api/v1/urls.py @@ -1,10 +1,12 @@ -from rest_framework.routers import DefaultRouter from django.urls import path, include +from rest_framework.routers import DefaultRouter + from .api import ( RoleViewSet, PermissionViewSet, UserRelationViewSet, - PageViewSet + PageViewSet, + UpdatePageAccessViewSet ) router = DefaultRouter() # set router @@ -14,6 +16,7 @@ router.register(r'role', RoleViewSet, basename='role') router.register(r'permission', PermissionViewSet, basename='permission') router.register(r'user-relations', UserRelationViewSet, basename='organization-role') router.register(r'page', PageViewSet, basename='page') +router.register(r'update_access', UpdatePageAccessViewSet, basename='update_page') urlpatterns = [ path('', include(router.urls)) diff --git a/apps/core/pagination.py b/apps/core/pagination.py index 89a5028..768ef92 100644 --- a/apps/core/pagination.py +++ b/apps/core/pagination.py @@ -5,7 +5,7 @@ from rest_framework.response import Response class CustomPageNumberPagination(PageNumberPagination): page_size = 5 # default page_size_query_param = 'page_size' # set from client - max_page_size = 100 # maximum items to show + max_page_size = 1000 # maximum items to show message = None def get_paginated_response(self, data):