@@ -2800,16 +2800,22 @@ def get(self, request, *args, **kwargs):
28002800
28012801class CodebaseResourceTableView (
28022802 ConditionalLoginRequired ,
2803+ PrefetchRelatedViewMixin ,
28032804 ProjectRelatedViewMixin ,
28042805 TableColumnsMixin ,
28052806 PaginatedFilterView ,
28062807):
2808+ prefetch_related = [
2809+ Prefetch (
2810+ "discovered_packages" ,
2811+ queryset = DiscoveredPackage .objects .only_package_url_fields (),
2812+ )
2813+ ]
28072814 def get_filterset_kwargs (self , filterset_class ):
28082815 """Remove 'path' from filterset data when showing children of a directory."""
28092816 kwargs = super ().get_filterset_kwargs (filterset_class )
28102817 path = self .request .GET .get ("path" )
28112818 if path :
2812- # Only remove 'path' if we're showing children of a directory
28132819 base_qs = super ().get_queryset ()
28142820 if base_qs .filter (path = path , type = "directory" ).exists ():
28152821 data = kwargs .get ("data" )
@@ -2861,7 +2867,6 @@ def get_filterset_kwargs(self, filterset_class):
28612867 def get_queryset (self ):
28622868 path = self .request .GET .get ("path" )
28632869 base_qs = super ().get_queryset ()
2864- # Default: all resources for the project
28652870 queryset = base_qs
28662871 if path :
28672872 dir_qs = base_qs .filter (path = path , type = "directory" )
@@ -2886,7 +2891,6 @@ def get_queryset(self):
28862891 "compliance_alert" ,
28872892 "package_data" ,
28882893 )
2889- .prefetch_related ("discovered_packages" )
28902894 .order_by ("type" , "path" )
28912895 )
28922896
0 commit comments