From 709db42835c447de0177b972f131d614a4bbeebf Mon Sep 17 00:00:00 2001 From: Kyle McCormick Date: Sun, 14 Mar 2021 20:40:24 -0400 Subject: [PATCH] refactor: de-index courses in contentstore, not course_overviews This is a minor refactoring in order to remove a code dependency of ./opendedx on ./cms --- cms/djangoapps/contentstore/signals/handlers.py | 9 +++++++++ .../core/djangoapps/content/course_overviews/signals.py | 4 ---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/cms/djangoapps/contentstore/signals/handlers.py b/cms/djangoapps/contentstore/signals/handlers.py index b82caf05dc..c70a801ca7 100644 --- a/cms/djangoapps/contentstore/signals/handlers.py +++ b/cms/djangoapps/contentstore/signals/handlers.py @@ -70,6 +70,15 @@ def listen_for_course_publish(sender, course_key, **kwargs): # pylint: disable= update_search_index.delay(course_key_str, datetime.now(UTC).isoformat()) +@receiver(SignalHandler.course_deleted) +def listen_for_course_delete(sender, course_key, **kwargs): # pylint: disable=unused-argument + """ + Catches the signal that a course has been deleted + and removes its entry from the Course About Search index. + """ + CourseAboutSearchIndexer.remove_deleted_items(course_key) + + @receiver(SignalHandler.library_updated) def listen_for_library_update(sender, library_key, **kwargs): # pylint: disable=unused-argument """ diff --git a/openedx/core/djangoapps/content/course_overviews/signals.py b/openedx/core/djangoapps/content/course_overviews/signals.py index 487c4e81cd..336724002a 100644 --- a/openedx/core/djangoapps/content/course_overviews/signals.py +++ b/openedx/core/djangoapps/content/course_overviews/signals.py @@ -41,10 +41,6 @@ def _listen_for_course_delete(sender, course_key, **kwargs): # pylint: disable= invalidates the corresponding CourseOverview cache entry if one exists. """ CourseOverview.objects.filter(id=course_key).delete() - # import CourseAboutSearchIndexer inline due to cyclic import - from cms.djangoapps.contentstore.courseware_index import CourseAboutSearchIndexer - # Delete course entry from Course About Search_index - CourseAboutSearchIndexer.remove_deleted_items(course_key) def _check_for_course_changes(previous_course_overview, updated_course_overview):