1234567891011121314151617181920 |
- from rest_framework import serializers
- from tickets.models import Ticket
- class TicketSerializer(serializers.ModelSerializer):
- available_statuses = serializers.SerializerMethodField()
- def get_available_statuses(self, obj):
- return obj.get_available_statuses()
- def validate_status(self, status):
- valid_statuses = self.get_available_statuses(self.instance)
- if not valid_statuses or status not in valid_statuses:
- raise serializers.ValidationError("Invalid value for the status field")
- return status
- class Meta():
- model = Ticket
- fields = "__all__"
- ref_name = "TicketSerializer_v2"
|