Commit 084b9507 by Muhammad Shoaib

added the UserSerializer

parent ae47a13d
"""Defines serializers used by the Proctoring API."""
from rest_framework import serializers
from django.contrib.auth.models import User
from edx_proctoring.models import ProctoredExam, ProctoredExamStudentAttempt, ProctoredExamStudentAllowance
......@@ -16,6 +17,21 @@ class StrictBooleanField(serializers.BooleanField):
return None
class UserSerializer(serializers.ModelSerializer):
"""
"""
class Meta:
"""
Meta Class
"""
model = User
fields = (
"id", "username", "email"
)
class ProctoredExamSerializer(serializers.ModelSerializer):
"""
Serializer for the ProctoredExam Model.
......@@ -42,6 +58,25 @@ class ProctoredExamSerializer(serializers.ModelSerializer):
)
class UserSerializer(serializers.ModelSerializer):
"""
Serializer for the User Model.
"""
id = serializers.IntegerField(required=False)
username = serializers.CharField(required=True)
email = serializers.CharField(required=True)
class Meta:
"""
Meta Class
"""
model = User
fields = (
"id", "username", "email"
)
class ProctoredExamStudentAttemptSerializer(serializers.ModelSerializer):
"""
Serializer for the ProctoredExamStudentAttempt Model.
......@@ -65,6 +100,7 @@ class ProctoredExamStudentAllowanceSerializer(serializers.ModelSerializer):
Serializer for the ProctoredExamStudentAllowance Model.
"""
proctored_exam = ProctoredExamSerializer()
user = serializers.SerializerMethodField('get_user')
class Meta:
"""
......@@ -74,3 +110,9 @@ class ProctoredExamStudentAllowanceSerializer(serializers.ModelSerializer):
fields = (
"id", "created", "modified", "user", "key", "value", "proctored_exam"
)
def get_user(self, allowance_object):
"""
returns the user object in a serialized form
"""
return UserSerializer(User.objects.get(id=allowance_object.user_id)).data
......@@ -26,8 +26,12 @@
<td>
<%- interpolate(gettext(' %(exam_display_name)s '), { exam_display_name: proctored_exam_allowance.proctored_exam.exam_name }, true) %>
</td>
<td> Dummy Username </td>
<td>muhammad.shoaib@gmail.com</td>
<td>
<%- interpolate(gettext(' %(username)s '), { username: proctored_exam_allowance.user.username }, true) %>
</td>
<td>
<%- interpolate(gettext(' %(email)s '), { email: proctored_exam_allowance.user.email }, true) %>
</td>
<td>
<%- interpolate(gettext(' %(allowance_name)s '), { allowance_name: proctored_exam_allowance.key }, true) %>
</td>
......
......@@ -372,7 +372,6 @@ class ExamAllowanceView(AuthenticatedAPIView):
"""
HTTP GET handler. Get all allowances for a course.
"""
result_set = get_allowances_for_course(
course_id=course_id
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment