Files
OnlineJudge/reaction/serializers.py
2026-08-06 06:15:48 -06:00

19 lines
560 B
Python

from reaction.models import ReactionType
from utils.api import serializers
MAX_REACTIONS = 3
class SetReactionSerializer(serializers.Serializer):
problem_id = serializers.IntegerField()
types = serializers.ListField(
child=serializers.ChoiceField(choices=ReactionType.choices),
allow_empty=False,
)
def validate_types(self, value):
unique = list(dict.fromkeys(value))
if len(unique) > MAX_REACTIONS:
raise serializers.ValidationError(f"最多只能选 {MAX_REACTIONS}")
return unique