update submission serializers

This commit is contained in:
2024-06-25 14:44:02 +00:00
parent 32ee17b566
commit 8e659f7931
3 changed files with 5 additions and 32 deletions

View File

@@ -1,4 +1,4 @@
from submission.serializers import SubmissionCodeSerializer
from submission.serializers import SubmissionListSerializer
from utils.api import serializers
from utils.api._serializers import UsernameSerializer
@@ -40,24 +40,12 @@ class EditAnnouncementSerializer(serializers.Serializer):
class MessageSerializer(serializers.Serializer):
sender = UsernameSerializer()
recipient = UsernameSerializer()
submission = SubmissionCodeSerializer()
submission = SubmissionListSerializer()
class Meta:
model = Message
fields = "__all__"
class MessageListSerializer(serializers.Serializer):
sender = UsernameSerializer()
recipient = UsernameSerializer()
submission = SubmissionCodeSerializer()
class Meta:
model = Message
exclude = ["message"]
class CreateMessageSerializer(serializers.Serializer):
recipient = serializers.IntegerField()
submission = serializers.CharField()

View File

@@ -6,7 +6,7 @@ from utils.api import APIView
from announcement.models import Announcement, Message
from announcement.serializers import (AnnouncementSerializer,
AnnouncementListSerializer,
CreateMessageSerializer, MessageListSerializer,
CreateMessageSerializer,
MessageSerializer)
from utils.api.api import validate_serializer
@@ -28,16 +28,8 @@ class AnnouncementAPI(APIView):
class MessageAPI(APIView):
@login_required
def get(self, request):
message_id = request.GET.get("id")
if message_id:
try:
message = Message.objects.filter(id=message_id, recipient=request.user)
return self.success(MessageSerializer(message).data)
except Message.DoesNotExist:
return self.error("Message does not exist")
else:
messages = Message.objects.select_related("recipient","sender", "submission").filter(recipient=request.user)
return self.success(self.paginate_data(request, messages, MessageListSerializer))
return self.success(self.paginate_data(request, messages, MessageSerializer))
@validate_serializer(CreateMessageSerializer)
@super_admin_required

View File

@@ -31,13 +31,6 @@ class SubmissionSafeModelSerializer(serializers.ModelSerializer):
model = Submission
exclude = ("info", "contest", "ip")
class SubmissionCodeSerializer(serializers.Serializer):
problem = serializers.SlugRelatedField(read_only=True, slug_field="_id")
class Meta:
model = Submission
fields = ("id", "code", "problem", "result", "language")
class SubmissionListSerializer(serializers.ModelSerializer):
problem = serializers.SlugRelatedField(read_only=True, slug_field="_id")