add CourseDetail, CourseStudentResults

This commit is contained in:
Luzivanlt 2023-02-23 23:11:52 +07:00
parent b629459b46
commit 1797b9fe06
10 changed files with 205 additions and 17 deletions

View file

@ -449,6 +449,13 @@ class Contest(models.Model):
"profile_id", flat=True
)
@cached_property
def total_points(self):
total = 0
for problem in self.problems.all():
total += problem.points
return total
def __str__(self):
return self.name
@ -543,7 +550,7 @@ class Contest(models.Model):
return True
return False
@classmethod
def get_visible_contests(cls, user, show_own_contests_only=False):
if not user.is_authenticated:

View file

@ -77,7 +77,7 @@ class Course(models.Model):
@classmethod
def get_students(cls,course):
return CourseRole.objects.filter(course=course, role="ST").values("user")
return CourseRole.objects.filter(course=course, role="ST")
@classmethod
def get_assistants(cls,course):
@ -104,7 +104,7 @@ class Course(models.Model):
class CourseRole(models.Model):
course = models.OneToOneField(
course = models.ForeignKey(
Course,
verbose_name=_("course"),
on_delete=models.CASCADE,
@ -167,7 +167,7 @@ class CourseResource(models.Model):
class CourseAssignment(models.Model):
course = models.OneToOneField(
course = models.ForeignKey(
Course,
verbose_name=_("course"),
on_delete=models.CASCADE,