Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Anthony
memopol
Commits
75d85817
Commit
75d85817
authored
Jul 09, 2016
by
Nicolas Joyard
Browse files
Enable filtering dossiers by chamber
parent
70f1a330
Changes
1
Show whitespace changes
Inline
Side-by-side
memopol/filters.py
View file @
75d85817
...
@@ -13,7 +13,7 @@ from representatives.models import Chamber, Group, Representative
...
@@ -13,7 +13,7 @@ from representatives.models import Chamber, Group, Representative
from
representatives_votes.models
import
Dossier
from
representatives_votes.models
import
Dossier
def
chamber_filter
(
qs
,
value
):
def
rep_
chamber_filter
(
qs
,
value
):
today
=
datetime
.
date
.
today
()
today
=
datetime
.
date
.
today
()
return
qs
.
filter
(
return
qs
.
filter
(
Q
(
mandates__end_date__gte
=
today
)
|
Q
(
mandates__end_date__isnull
=
True
),
Q
(
mandates__end_date__gte
=
today
)
|
Q
(
mandates__end_date__isnull
=
True
),
...
@@ -21,6 +21,10 @@ def chamber_filter(qs, value):
...
@@ -21,6 +21,10 @@ def chamber_filter(qs, value):
)
)
def
dossier_chamber_filter
(
qs
,
value
):
return
qs
.
filter
(
documents__chamber
=
value
)
def
group_filter
(
qs
,
value
):
def
group_filter
(
qs
,
value
):
today
=
datetime
.
date
.
today
()
today
=
datetime
.
date
.
today
()
return
qs
.
filter
(
return
qs
.
filter
(
...
@@ -34,7 +38,7 @@ class RepresentativeFilter(FilterSet):
...
@@ -34,7 +38,7 @@ class RepresentativeFilter(FilterSet):
search
=
MethodFilter
(
action
=
'search_filter'
)
search
=
MethodFilter
(
action
=
'search_filter'
)
chamber
=
ModelChoiceFilter
(
queryset
=
Chamber
.
objects
.
all
(),
chamber
=
ModelChoiceFilter
(
queryset
=
Chamber
.
objects
.
all
(),
action
=
chamber_filter
)
action
=
rep_
chamber_filter
)
country
=
ModelChoiceFilter
(
queryset
=
Group
.
objects
.
filter
(
kind
=
'country'
),
country
=
ModelChoiceFilter
(
queryset
=
Group
.
objects
.
filter
(
kind
=
'country'
),
action
=
group_filter
)
action
=
group_filter
)
...
@@ -60,9 +64,12 @@ class DossierFilter(FilterSet):
...
@@ -60,9 +64,12 @@ class DossierFilter(FilterSet):
search
=
MethodFilter
(
action
=
'search_filter'
)
search
=
MethodFilter
(
action
=
'search_filter'
)
chamber
=
ModelChoiceFilter
(
queryset
=
Chamber
.
objects
.
all
(),
action
=
dossier_chamber_filter
)
class
Meta
:
class
Meta
:
model
=
Dossier
model
=
Dossier
fields
=
[
'search'
]
fields
=
[
'search'
,
'chamber'
]
def
search_filter
(
self
,
qs
,
value
):
def
search_filter
(
self
,
qs
,
value
):
if
len
(
value
)
==
0
:
if
len
(
value
)
==
0
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment