Skip to content
Snippets Groups Projects
Commit 249b61cb authored by Mario Raciti's avatar Mario Raciti
Browse files

TMSS-736: Add remaining filtering and ordering info

parent 745245d2
No related branches found
No related tags found
1 merge request!438Resolve TMSS-736
......@@ -16,16 +16,19 @@ class LOFARDefaultMetadata(SimpleMetadata):
metadata['filters'] = OrderedDict()
if hasattr(view, 'filter_fields'):
all_fields = view.get_serializer().Meta.model._meta.fields
filters = OrderedDict()
if view.filter_fields == '__all__':
# Iterate over all fields
fields = view.get_serializer().Meta.model._meta.fields
filters = OrderedDict()
for f in fields:
for f in all_fields:
filters[f.name] = {"type": str(f.__class__.__name__), "lookup_types": ["exact"]}
metadata['filters'] = {**metadata['filters'], **filters}
else:
# TODO: Handle field per field.
pass
for f in view.filter_fields:
for af in all_fields:
if f == af.name:
filters[af.name] = {"type": str(af.__class__.__name__), "lookup_types": ["exact"]}
metadata['filters'] = {**metadata['filters'], **filters}
if hasattr(view, 'filter_class'):
# Add filters
......@@ -75,7 +78,6 @@ class LOFARDefaultMetadata(SimpleMetadata):
fields = view.get_serializer().Meta.model._meta.fields
metadata['ordering'] = [f.name for f in fields]
else:
# TODO: Handle field per field.
pass
metadata['ordering'] = [f for f in view.ordering_fields]
return metadata
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment