# 61 Filter code enhancement

* reorganizes code
This commit is contained in:
2022-01-12 09:23:22 +01:00
parent 0cb65ae720
commit 59a541397e
4 changed files with 34 additions and 42 deletions

View File

@@ -5,27 +5,22 @@ Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 22.07.21
"""
from konova.filters import QueryTableFilter, CheckboxTableFilter, SelectionTableFilter
from konova.filters import AbstractTableFilter, SelectionTableFilter, QueryTableFilter, CheckboxTableFilter
class InterventionTableFilter:
selection_filter = None
query_filter = None
checkbox_filter = None
qs = None
def __init__(self, *args, **kwargs):
user = kwargs.get("user", None)
class InterventionTableFilter(AbstractTableFilter):
def __init__(self, user=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.user = user
qs = kwargs.get("queryset", None)
request_data = kwargs.get("data", None)
# Pipe the queryset through all needed filters
self.selection_filter = SelectionTableFilter(
user=user,
data=request_data,
queryset=qs,
)
self.query_filter = QueryTableFilter(
user=user,
data=request_data,
queryset=self.selection_filter.qs,
)
@@ -35,3 +30,4 @@ class InterventionTableFilter:
queryset=self.query_filter.qs,
)
self.qs = self.checkbox_filter.qs