HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: /var/www/html/calendar-planning/app/serializers.py
from rest_framework import serializers
from .models import Category, Event
import re

class CategorySerializer(serializers.ModelSerializer):
    class Meta:
        model = Category
        fields = ['category_id', 'name']

class EventSerializer(serializers.ModelSerializer):
    categories = serializers.ListField(
        child=serializers.CharField(max_length=256),
        write_only=True,
    )
    category_objects = CategorySerializer(many=True, read_only=True, source='categories')

    class Meta:
        model = Event
        fields = ['event_id', 'created_on', 'categories', 'country', 'year', 'category_objects']

    def validate_year(self, value):
        if not (2025 <= value <= 2050):
            raise serializers.ValidationError("Year must be between 2025 and 2050")
        return value