Ilo/apps/announcements/api/serializers.py
2026-05-02 20:01:30 +03:30

23 lines
804 B
Python

from rest_framework import serializers
from apps.announcements.models import Announcement
from apps.courses.models import Course
class AnnouncementSerializer(serializers.ModelSerializer):
posted_by_name = serializers.CharField(source="posted_by.full_name", read_only=True, allow_null=True)
class Meta:
model = Announcement
fields = ["id", "course", "body", "posted_by", "posted_by_name", "created_at", "updated_at"]
read_only_fields = ["id", "posted_by", "posted_by_name", "created_at", "updated_at"]
class AnnouncementWriteSerializer(serializers.ModelSerializer):
course = serializers.PrimaryKeyRelatedField(queryset=Course.objects.all())
class Meta:
model = Announcement
fields = ["id", "course", "body"]
read_only_fields = ["id"]