From 97cc816d0b277ef0e28a1950d29acf5c76a072c2 Mon Sep 17 00:00:00 2001 From: Calen Pennington Date: Thu, 17 Oct 2019 11:34:53 -0400 Subject: [PATCH] Pre-select the course overview during dashboard loading --- common/djangoapps/student/models.py | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/common/djangoapps/student/models.py b/common/djangoapps/student/models.py index d41f186859..43b350a2e4 100644 --- a/common/djangoapps/student/models.py +++ b/common/djangoapps/student/models.py @@ -1608,21 +1608,12 @@ class CourseEnrollment(models.Model): The name of this method is long, but was the end result of hashing out a number of alternatives, so pylint can stuff it (disable=invalid-name) """ + enrollments = cls.enrollments_for_user(user).select_related('schedule', 'course', 'course__image_set') if courses_limit: - enrollments = cls.enrollments_for_user(user).order_by('-created')[:courses_limit] + return enrollments.order_by('-created')[:courses_limit] else: - enrollments = cls.enrollments_for_user(user) - - enrollments.select_related('schedule') - - overviews = CourseOverview.get_from_ids_if_exists( - enrollment.course_id for enrollment in enrollments - ) - for enrollment in enrollments: - enrollment._course_overview = overviews.get(enrollment.course_id) # pylint: disable=protected-access - - return enrollments + return enrollments @classmethod def enrollment_status_hash_cache_key(cls, user):