Skip to content
Extraits de code Groupes Projets
Valider 22fa8be1 rédigé par luxcem's avatar luxcem
Parcourir les fichiers

updates search urls

parent b51b963f
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -9,11 +9,11 @@ def by_mandate_url(mandate): ...@@ -9,11 +9,11 @@ def by_mandate_url(mandate):
kwargs = {'mandate_kind': mandate.group.kind} kwargs = {'mandate_kind': mandate.group.kind}
if mandate.group.abbreviation: if mandate.group.abbreviation:
kwargs['mandate_abbr'] = mandate.group.abbreviation kwargs['search'] = mandate.group.abbreviation
else: else:
kwargs['mandate_name'] = mandate.group.name kwargs['search'] = mandate.group.name
return reverse( return reverse(
'representatives:listby', 'representatives:list',
kwargs=kwargs kwargs=kwargs
) )
...@@ -5,11 +5,7 @@ from memopol_representatives import views ...@@ -5,11 +5,7 @@ from memopol_representatives import views
urlpatterns = patterns( urlpatterns = patterns(
'', '',
url(r'^$', views.index, name='index'), url(r'^$', views.index, name='index'),
url(r'^committee/(?P<mandate_abbr>\w{4})$', url(r'^l/(?P<mandate_kind>\w+)/(?P<search>.+)$',
views.by_mandate, {'mandate_kind': 'committee'}, name='committee'), views.by_mandate, name='list'),
url(r'^listby/(?P<mandate_kind>\w+)/a/(?P<mandate_abbr>.+)$',
views.by_mandate, name='listby'),
url(r'^listby/(?P<mandate_kind>\w+)/n/(?P<mandate_name>.+)$',
views.by_mandate, name='listby'),
url(r'^view/(?P<num>\d+)$', views.view, name='view'), url(r'^view/(?P<num>\d+)$', views.view, name='view'),
) )
...@@ -14,19 +14,26 @@ def index(request): ...@@ -14,19 +14,26 @@ def index(request):
return _render_list(request, representative_list) return _render_list(request, representative_list)
def by_mandate(request, mandate_kind, mandate_abbr=None, mandate_name=None): def by_mandate(request, mandate_kind, mandate_abbr=None, mandate_name=None, search=None):
representative_list = Representative.objects.filter(
mandate__group__kind=mandate_kind,
mandate__active=True
)
if mandate_abbr: if mandate_abbr:
representative_list = representative_list.filter( representative_list = Representative.objects.filter(
mandate__group__abbreviation=mandate_abbr, mandate__group__abbreviation=mandate_abbr,
mandate__group__kind=mandate_kind,
mandate__active=True mandate__active=True
) )
if mandate_name:
representative_list = representative_list.filter( elif mandate_name:
representative_list = Representative.objects.filter(
Q(mandate__group__name__icontains=mandate_name), Q(mandate__group__name__icontains=mandate_name),
mandate__group__kind=mandate_kind,
mandate__active=True
)
elif search:
representative_list = Representative.objects.filter(
Q(mandate__group__abbreviation__icontains=search) |
Q(mandate__group__name__icontains=search),
mandate__group__kind=mandate_kind,
mandate__active=True mandate__active=True
) )
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter