fix: support list of str or int in filters
This commit is contained in:
parent
a0f6a5ff46
commit
76deeb531c
1 changed files with 8 additions and 5 deletions
|
|
@ -111,11 +111,14 @@ class Engine:
|
|||
self.apply_dict_filters(filters)
|
||||
|
||||
elif isinstance(filters, (list, tuple)):
|
||||
for filter in filters:
|
||||
if isinstance(filter, (str, int, Criterion, dict)):
|
||||
self.apply_filters(filter)
|
||||
elif isinstance(filter, (list, tuple)):
|
||||
self.apply_list_filters(filter)
|
||||
if all(isinstance(d, (str, int)) for d in filters):
|
||||
self.apply_dict_filters({"name": ("in", filters)})
|
||||
else:
|
||||
for filter in filters:
|
||||
if isinstance(filter, (str, int, Criterion, dict)):
|
||||
self.apply_filters(filter)
|
||||
elif isinstance(filter, (list, tuple)):
|
||||
self.apply_list_filters(filter)
|
||||
|
||||
def apply_list_filters(self, filter: list):
|
||||
if len(filter) == 2:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue