Skip to content

Commit 9ecc951

Browse files
committed
Allow per-field overriding of default_operator
So I can do something like this: ```python class AlbumFilterSet(FilterSet): class Meta: model = Album query = session.query(Album) operators = (Equal, Greater, Less) column_overrides = { 'name': {'default_operator': Like} } ```
1 parent 564b19b commit 9ecc951

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

filteralchemy/filterset.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,12 @@ def get_model_filters(mcs, klass):
7777
opts.converter.field_for(opts.model, prop.key)
7878
)
7979
operators = overrides.get('operators') or opts.operators
80+
default_operator = (overrides.get('default_operator') or
81+
opts.default_operator)
8082
for operator in operators:
8183
operator_name = (
8284
operator.label
83-
if operator != opts.default_operator
85+
if operator != default_operator
8486
else None
8587
)
8688
name = underscore_formatter(prop.key, operator_name)

0 commit comments

Comments
 (0)