Fixes: #4230 - Fixes filtering by position on elevation endpoint

* Add tests for rack elevation filtering
* Add q variable to serializers for RackElevationDetailFilterSerializer
* Add code to allow filtering of position on the rack elevation
This commit is contained in:
Dan Sheppard
2020-02-22 08:16:29 -06:00
parent 058f8ad8f3
commit 28b8952299
3 changed files with 31 additions and 0 deletions

View File

@@ -237,6 +237,11 @@ class RackViewSet(CustomFieldModelViewSet):
expand_devices=data['expand_devices']
)
# Enable filtering rack units by ID
q = data['q']
if q:
elevation = [u for u in elevation if q in str(u['id']) or q in str(u['name'])]
page = self.paginate_queryset(elevation)
if page is not None:
rack_units = serializers.RackUnitSerializer(page, many=True, context={'request': request})