def prepare_data(self, model_class): qs = model_class.objects.live().order_by('title') qs = TranslatablePageMixin.apply_translation_filter(qs, self.request) if self.query_string: # cast to list, as a searchqueryset (or something...) is returned return list(qs.search(self.query_string)) return qs
def get_descendants(self, obj): request = self.context['request'] project_country_pages = TranslatablePageMixin.apply_translation_filter( ProjectCountryPage.objects.filter(country=obj), request) for project in project_country_pages: yield CountryDescendant( name=project.get_parent().get_parent().title, url=reverse( 'projectpage-detail', kwargs={'pk': project.get_parent().get_parent().pk}), countrypage_url=project.url, project=project.title) included_projects = TranslatablePageMixin.apply_translation_filter( ProjectPage.objects.filter(included_countries=obj), request) for project in included_projects: yield Descendant( name=project.title, url=reverse('projectpage-detail', kwargs={'pk': project.pk}), )