23 lines
804 B
Python
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"]
|