def programs(self): """ Returns the list of Programs contained within this catalog. Returns: QuerySet """ return Program.search(self.program_query)
def get_queryset(self): # This method prevents prefetches on the program queryset from "stacking," # which happens when the queryset is stored in a class property. partner = self.request.site.partner q = self.request.query_params.get('q') queryset = None if q: queryset = Program.search(q) return self.get_serializer_class().prefetch_queryset(queryset=queryset, partner=partner)