File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 77import logging
88from collections import defaultdict
99
10+ from django .db .models import Q
11+
1012from casbin import Enforcer
1113
1214from openedx_authz .api .data import CourseOverviewData , OrgCourseOverviewGlobData
@@ -204,7 +206,6 @@ def migrate_legacy_course_roles_to_authz(course_access_role_model, course_id_lis
204206 "At least one of course_id_list or org_id must be provided to limit the scope of the migration."
205207 )
206208
207- # TODO: not sure if we should keep the startswith here
208209 course_access_role_filter = {}
209210
210211 if org_id :
@@ -216,7 +217,10 @@ def migrate_legacy_course_roles_to_authz(course_access_role_model, course_id_lis
216217 course_access_role_filter ["course_id__in" ] = course_id_list
217218
218219 legacy_permissions = (
219- course_access_role_model .objects .filter (** course_access_role_filter ).select_related ("user" ).all ()
220+ course_access_role_model .objects .filter (** course_access_role_filter )
221+ .filter (Q (course_id = "" ) | Q (course_id__startswith = CourseOverviewData .NAMESPACE ))
222+ .select_related ("user" )
223+ .all ()
220224 )
221225
222226 # List to keep track of any permissions that could not be migrated
You can’t perform that action at this time.
0 commit comments