Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
MOOC packages by hacklab
django-courses
Commits
6bb0a42e
Commit
6bb0a42e
authored
Aug 21, 2020
by
Laury Bueno
Browse files
[Classes] Only valid students must be listed
parent
c3bd363e
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
10 additions
and
2 deletions
+10
-2
courses/classes/models.py
courses/classes/models.py
+5
-1
courses/classes/serializers.py
courses/classes/serializers.py
+5
-1
No files found.
courses/classes/models.py
View file @
6bb0a42e
...
...
@@ -58,5 +58,9 @@ class Class(models.Model):
@
property
def
get_students
(
self
):
return
self
.
course
.
course_students
.
filter
(
user__in
=
self
.
students
.
all
(),
user__in
=
self
.
students
.
all
(),
user__is_active
=
True
).
select_related
(
'user'
).
order_by
(
'user__first_name'
)
@
property
def
valid_students
(
self
):
return
self
.
students
.
filter
(
is_active
=
True
)
courses/classes/serializers.py
View file @
6bb0a42e
...
...
@@ -17,6 +17,10 @@ from .models import Class
class
BasicClassSerializer
(
serializers
.
ModelSerializer
):
assistants
=
SimpleUserSerializer
(
read_only
=
True
,
many
=
True
)
students
=
serializers
.
SerializerMethodField
()
def
get_students
(
self
,
obj
):
return
obj
.
valid_students
.
values_list
(
'id'
,
flat
=
True
)
class
Meta
:
model
=
Class
...
...
@@ -35,7 +39,7 @@ class CourseStudentClassSerializer(serializers.ModelSerializer):
class
ClassSerializer
(
WorkspaceBaseSerializerMixin
,
serializers
.
ModelSerializer
):
enrolled_students
=
CourseStudentClassSerializer
(
source
=
'get_students'
,
many
=
True
,
read_only
=
True
)
students_details
=
SimpleUserSerializer
(
source
=
'students'
,
many
=
True
,
read_only
=
True
)
students_details
=
SimpleUserSerializer
(
source
=
'
valid_
students'
,
many
=
True
,
read_only
=
True
)
processes
=
CertificationProcessSerializer
(
read_only
=
True
,
many
=
True
)
evaluations
=
EvaluationSerializer
(
read_only
=
True
,
many
=
True
)
course
=
BasicCourseSerializer
(
read_only
=
True
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment