diff --git a/representatives_votes/autocompletes.py b/representatives_votes/autocompletes.py index ee1e817fb61fcaa5a6d00c4bb663af96aabb20fe..d2938490f1179fb0ca68c271e28111fd1a873e10 100644 --- a/representatives_votes/autocompletes.py +++ b/representatives_votes/autocompletes.py @@ -2,7 +2,20 @@ from dal import autocomplete from django.db.models import Q -from models import Proposal +from models import Dossier, Proposal + + +class DossierAutocomplete(autocomplete.Select2QuerySetView): + def get_queryset(self): + qs = Dossier.objects.all() + + if self.q: + qs = qs.filter( + Q(title__icontains=self.q) | + Q(reference__icontains=self.q) + ) + + return qs class ProposalAutocomplete(autocomplete.Select2QuerySetView): diff --git a/representatives_votes/urls.py b/representatives_votes/urls.py index 1e307ad302043f6f7ff6f1781502b65bcd73264f..b51c333d623ad080fb8c31146edab01cc7375f94 100644 --- a/representatives_votes/urls.py +++ b/representatives_votes/urls.py @@ -17,12 +17,20 @@ urlpatterns = [ ] if 'dal_select2' in settings.INSTALLED_APPS: - from autocompletes import ProposalAutocomplete # noqa + from autocompletes import ( # noqa + DossierAutocomplete, + ProposalAutocomplete, + ) - urlpatterns.append( + urlpatterns += [ + url( + '^autocomplete/dossier/$', + DossierAutocomplete.as_view(), + name='dossier-autocomplete', + ), url( '^autocomplete/proposal/$', ProposalAutocomplete.as_view(), name='proposal-autocomplete', ), - ) + ]