Add course description to class page
This commit is contained in:
@@ -449,9 +449,14 @@ class StudentTrainingSerializer(TrainingSerializer):
|
||||
attendance_status = serializers.ChoiceField(['Waiting for payment', 'Withdrawn'])
|
||||
|
||||
|
||||
class CourseSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.Course
|
||||
fields = ['id', 'name', 'is_old', 'description']
|
||||
|
||||
class SessionSerializer(serializers.ModelSerializer):
|
||||
student_count = serializers.SerializerMethodField()
|
||||
course_name = serializers.SerializerMethodField()
|
||||
course_data = serializers.SerializerMethodField()
|
||||
instructor_name = serializers.SerializerMethodField()
|
||||
datetime = serializers.DateTimeField()
|
||||
course = serializers.PrimaryKeyRelatedField(queryset=models.Course.objects.all())
|
||||
@@ -467,8 +472,8 @@ class SessionSerializer(serializers.ModelSerializer):
|
||||
def get_student_count(self, obj):
|
||||
return len([x for x in obj.students.all() if x.attendance_status != 'Withdrawn'])
|
||||
|
||||
def get_course_name(self, obj):
|
||||
return obj.course.name
|
||||
def get_course_data(self, obj):
|
||||
return CourseSerializer(obj.course).data
|
||||
|
||||
def get_instructor_name(self, obj):
|
||||
if obj.instructor and hasattr(obj.instructor, 'member'):
|
||||
@@ -481,11 +486,6 @@ class SessionListSerializer(SessionSerializer):
|
||||
students = None
|
||||
|
||||
|
||||
class CourseSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = models.Course
|
||||
fields = ['id', 'name']
|
||||
|
||||
class CourseDetailSerializer(serializers.ModelSerializer):
|
||||
sessions = SessionListSerializer(many=True, read_only=True)
|
||||
name = serializers.CharField(max_length=100)
|
||||
|
Reference in New Issue
Block a user