def get_queryset(self): """Only list teams participating in self.get_competition()""" c = self.get_competition() users = User.objects.filter(registration__competition=c, registration__active=True) if 'search' in self.request.GET: users = competitor_search_filter(users, self.request.GET['search']) return users.exclude(team__competition=c)
def read(self, request, search=None, comp_slug=None, free=False): users = User.objects if comp_slug != None: c = get_object_or_404(Competition, slug=comp_slug) users = users.filter(registration__competition=c) if free: users = users.exclude(team__competition=c) users = users.filter(registration__active=True) if search != None: users = competitor_search_filter(users, search) return users