From d07537cca3616d46cd372bdfc479bd9f8851bc10 Mon Sep 17 00:00:00 2001 From: phzhik Date: Sun, 26 May 2024 16:21:09 +0400 Subject: [PATCH] + ChecklistListSerializer with smaller set of fields in /checklist/ --- store/serializers.py | 11 +++++++++++ store/views.py | 6 +++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/store/serializers.py b/store/serializers.py index 537e520..305e697 100644 --- a/store/serializers.py +++ b/store/serializers.py @@ -193,6 +193,17 @@ class ChecklistSerializer(serializers.ModelSerializer): ) +class ChecklistListSerializer(ChecklistSerializer): + class Meta: + model = ChecklistSerializer.Meta.model + fields = ('id', 'status', + 'category', 'brand', 'model', 'size', 'preview_image_url', + 'price_yuan', 'price_rub', 'full_price', 'real_price', + 'comment', + 'poizon_tracking', 'cdek_tracking', 'delivery', 'delivery_display', + 'created_at', 'status_updated_at') + + class ClientChecklistSerializerMixin: def validate(self, attrs): gift = attrs.get('gift') diff --git a/store/views.py b/store/views.py index a1cde80..e3888a2 100644 --- a/store/views.py +++ b/store/views.py @@ -20,7 +20,7 @@ from store.models import Checklist, Category, PaymentMethod, Promocode, Gift from core.models import GlobalSettings from store.serializers import (ChecklistSerializer, CategorySerializer, CategoryFullSerializer, PaymentMethodSerializer, PromocodeSerializer, ClientUpdateChecklistSerializer, - GiftSerializer, ClientCreateChecklistSerializer) + GiftSerializer, ClientCreateChecklistSerializer, ChecklistListSerializer) from account.permissions import ReadOnly, IsManager, IsAdmin @@ -75,6 +75,10 @@ class ChecklistAPI(viewsets.ModelViewSet): elif self.action in ['update', 'partial_update', 'destroy']: return ClientUpdateChecklistSerializer + # Simplified list serializer + elif self.action == "list": + return ChecklistListSerializer + # Fallback to error self.permission_denied(self.request, **self.kwargs)